commit 8f2bb8087dd3c1639eef8a88e9a3d1199f870c4e Author: Artem Darius Weber Date: Mon May 13 14:10:11 2024 +0300 init diff --git a/db_lab.sln b/db_lab.sln new file mode 100644 index 0000000..aa3748a --- /dev/null +++ b/db_lab.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.8.34330.188 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "db_lab", "db_lab\db_lab.csproj", "{27C228AD-7C9B-42AE-867B-8A592A3F4EE8}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {27C228AD-7C9B-42AE-867B-8A592A3F4EE8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {27C228AD-7C9B-42AE-867B-8A592A3F4EE8}.Debug|Any CPU.Build.0 = Debug|Any CPU + {27C228AD-7C9B-42AE-867B-8A592A3F4EE8}.Release|Any CPU.ActiveCfg = Release|Any CPU + {27C228AD-7C9B-42AE-867B-8A592A3F4EE8}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {7B4DCBB7-E8DB-4C8D-ACD6-924819B362A9} + EndGlobalSection +EndGlobal diff --git a/db_lab/.gitignore b/db_lab/.gitignore new file mode 100644 index 0000000..36854cc --- /dev/null +++ b/db_lab/.gitignore @@ -0,0 +1 @@ +/.vs diff --git a/db_lab/App.config b/db_lab/App.config new file mode 100644 index 0000000..1bdad40 --- /dev/null +++ b/db_lab/App.config @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/db_lab/DataForm.Designer.cs b/db_lab/DataForm.Designer.cs new file mode 100644 index 0000000..32b9b5d --- /dev/null +++ b/db_lab/DataForm.Designer.cs @@ -0,0 +1,39 @@ +namespace db_lab +{ + partial class DataForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Text = "DataForm"; + } + + #endregion + } +} \ No newline at end of file diff --git a/db_lab/DataForm.cs b/db_lab/DataForm.cs new file mode 100644 index 0000000..9c9ea78 --- /dev/null +++ b/db_lab/DataForm.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace db_lab +{ + public partial class DataForm : Form + { + public DataForm() + { + InitializeComponent(); + } + } +} diff --git a/db_lab/Form1.Designer.cs b/db_lab/Form1.Designer.cs new file mode 100644 index 0000000..92a7230 --- /dev/null +++ b/db_lab/Form1.Designer.cs @@ -0,0 +1,144 @@ +namespace db_lab +{ + partial class Form1 + { + /// + /// Обязательная переменная конструктора. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Освободить все используемые ресурсы. + /// + /// истинно, если управляемый ресурс должен быть удален; иначе ложно. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Код, автоматически созданный конструктором форм Windows + + /// + /// Требуемый метод для поддержки конструктора — не изменяйте + /// содержимое этого метода с помощью редактора кода. + /// + private void InitializeComponent() + { + this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel(); + this.guideBtn = new System.Windows.Forms.Button(); + this.dataBtn = new System.Windows.Forms.Button(); + this.raportBtn = new System.Windows.Forms.Button(); + this.aboutBtn = new System.Windows.Forms.Button(); + this.exitBtn = new System.Windows.Forms.Button(); + this.dbConnectBtn = new System.Windows.Forms.Button(); + this.flowLayoutPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // flowLayoutPanel1 + // + this.flowLayoutPanel1.AutoSize = true; + this.flowLayoutPanel1.Controls.Add(this.guideBtn); + this.flowLayoutPanel1.Controls.Add(this.dataBtn); + this.flowLayoutPanel1.Controls.Add(this.raportBtn); + this.flowLayoutPanel1.Controls.Add(this.aboutBtn); + this.flowLayoutPanel1.Controls.Add(this.dbConnectBtn); + this.flowLayoutPanel1.Controls.Add(this.exitBtn); + this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.flowLayoutPanel1.Location = new System.Drawing.Point(0, 0); + this.flowLayoutPanel1.Name = "flowLayoutPanel1"; + this.flowLayoutPanel1.Size = new System.Drawing.Size(800, 450); + this.flowLayoutPanel1.TabIndex = 0; + // + // guideBtn + // + this.guideBtn.Location = new System.Drawing.Point(3, 3); + this.guideBtn.Name = "guideBtn"; + this.guideBtn.Size = new System.Drawing.Size(75, 23); + this.guideBtn.TabIndex = 0; + this.guideBtn.Text = "Справочники"; + this.guideBtn.UseVisualStyleBackColor = true; + this.guideBtn.Click += new System.EventHandler(this.guideBtn_Click); + // + // dataBtn + // + this.dataBtn.Location = new System.Drawing.Point(84, 3); + this.dataBtn.Name = "dataBtn"; + this.dataBtn.Size = new System.Drawing.Size(75, 23); + this.dataBtn.TabIndex = 1; + this.dataBtn.Text = "Данные"; + this.dataBtn.UseVisualStyleBackColor = true; + this.dataBtn.Click += new System.EventHandler(this.dataBtn_Click); + // + // raportBtn + // + this.raportBtn.Location = new System.Drawing.Point(165, 3); + this.raportBtn.Name = "raportBtn"; + this.raportBtn.Size = new System.Drawing.Size(75, 23); + this.raportBtn.TabIndex = 2; + this.raportBtn.Text = "Отчеты"; + this.raportBtn.UseVisualStyleBackColor = true; + this.raportBtn.Click += new System.EventHandler(this.raportBtn_Click); + // + // aboutBtn + // + this.aboutBtn.Location = new System.Drawing.Point(246, 3); + this.aboutBtn.Name = "aboutBtn"; + this.aboutBtn.Size = new System.Drawing.Size(108, 23); + this.aboutBtn.TabIndex = 3; + this.aboutBtn.Text = "О программе"; + this.aboutBtn.UseVisualStyleBackColor = true; + this.aboutBtn.Click += new System.EventHandler(this.aboutBtn_Click); + // + // exitBtn + // + this.exitBtn.Location = new System.Drawing.Point(528, 3); + this.exitBtn.Name = "exitBtn"; + this.exitBtn.Size = new System.Drawing.Size(75, 23); + this.exitBtn.TabIndex = 4; + this.exitBtn.Text = "Выход"; + this.exitBtn.UseVisualStyleBackColor = true; + this.exitBtn.Click += new System.EventHandler(this.exitBtn_Click); + // + // dbConnectBtn + // + this.dbConnectBtn.AutoSize = true; + this.dbConnectBtn.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.dbConnectBtn.Location = new System.Drawing.Point(360, 3); + this.dbConnectBtn.Name = "dbConnectBtn"; + this.dbConnectBtn.Size = new System.Drawing.Size(162, 23); + this.dbConnectBtn.TabIndex = 5; + this.dbConnectBtn.Text = "Подключение к базе данных"; + this.dbConnectBtn.UseVisualStyleBackColor = true; + this.dbConnectBtn.Click += new System.EventHandler(this.dbConnectBtn_Click); + // + // Form1 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Controls.Add(this.flowLayoutPanel1); + this.Name = "Form1"; + this.Text = "Form1"; + this.flowLayoutPanel1.ResumeLayout(false); + this.flowLayoutPanel1.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1; + private System.Windows.Forms.Button guideBtn; + private System.Windows.Forms.Button dataBtn; + private System.Windows.Forms.Button raportBtn; + private System.Windows.Forms.Button aboutBtn; + private System.Windows.Forms.Button exitBtn; + private System.Windows.Forms.Button dbConnectBtn; + } +} + diff --git a/db_lab/Form1.cs b/db_lab/Form1.cs new file mode 100644 index 0000000..0cc8089 --- /dev/null +++ b/db_lab/Form1.cs @@ -0,0 +1,70 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using Npgsql; + +namespace db_lab +{ + public partial class Form1 : Form + { + string connectionString = "Server=localhost;Port=5432;UserId=postgres;Password=postgres;Database=SQL_Servers;"; + NpgsqlConnection connection; + + public Form1() + { + InitializeComponent(); + } + + private void exitBtn_Click(object sender, EventArgs e) + { + Application.Exit(); + } + + private void aboutBtn_Click(object sender, EventArgs e) + { + string appName = Application.ProductName; + string appVersion = Application.ProductVersion; + string developer = "Артем Вебер"; + + string message = $"Приложение: {appName}\nВерсия: {appVersion}\nРазработчик: {developer}"; + MessageBox.Show(message, "Информация о приложении", MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + private void raportBtn_Click(object sender, EventArgs e) + { + RaportForm raportForm = new RaportForm(); + raportForm.Show(); + } + + private void dataBtn_Click(object sender, EventArgs e) + { + DataForm dataForm = new DataForm(); + dataForm.Show(); + } + + private void guideBtn_Click(object sender, EventArgs e) + { + GuideForm guideForm = new GuideForm(); + guideForm.Show(); + } + + private void dbConnectBtn_Click(object sender, EventArgs e) + { + try + { + this.connection = new NpgsqlConnection(this.connectionString); + this.connection.Open(); + MessageBox.Show("Database was successfuly connected!"); + } catch (Exception ex) + { + MessageBox.Show($"Error! Db connection was fatal! Log: {ex.Message}"); + } + } + } +} diff --git a/db_lab/Form1.resx b/db_lab/Form1.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/db_lab/Form1.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/db_lab/GuideForm.Designer.cs b/db_lab/GuideForm.Designer.cs new file mode 100644 index 0000000..c1ca711 --- /dev/null +++ b/db_lab/GuideForm.Designer.cs @@ -0,0 +1,39 @@ +namespace db_lab +{ + partial class GuideForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Text = "GuideForm"; + } + + #endregion + } +} \ No newline at end of file diff --git a/db_lab/GuideForm.cs b/db_lab/GuideForm.cs new file mode 100644 index 0000000..6a5598a --- /dev/null +++ b/db_lab/GuideForm.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace db_lab +{ + public partial class GuideForm : Form + { + public GuideForm() + { + InitializeComponent(); + } + } +} diff --git a/db_lab/Program.cs b/db_lab/Program.cs new file mode 100644 index 0000000..a6955cf --- /dev/null +++ b/db_lab/Program.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace db_lab +{ + internal static class Program + { + /// + /// Главная точка входа для приложения. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new Form1()); + } + } +} diff --git a/db_lab/Properties/AssemblyInfo.cs b/db_lab/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..dfd98bc --- /dev/null +++ b/db_lab/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Общие сведения об этой сборке предоставляются следующим набором +// набора атрибутов. Измените значения этих атрибутов для изменения сведений, +// связанных со сборкой. +[assembly: AssemblyTitle("db_lab")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("db_lab")] +[assembly: AssemblyCopyright("Copyright © 2024")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми +// для компонентов COM. Если необходимо обратиться к типу в этой сборке через +// COM, следует установить атрибут ComVisible в TRUE для этого типа. +[assembly: ComVisible(false)] + +// Следующий GUID служит для идентификации библиотеки типов, если этот проект будет видимым для COM +[assembly: Guid("27c228ad-7c9b-42ae-867b-8a592a3f4ee8")] + +// Сведения о версии сборки состоят из указанных ниже четырех значений: +// +// Основной номер версии +// Дополнительный номер версии +// Номер сборки +// Редакция +// +// Можно задать все значения или принять номера сборки и редакции по умолчанию +// используя "*", как показано ниже: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/db_lab/Properties/Resources.Designer.cs b/db_lab/Properties/Resources.Designer.cs new file mode 100644 index 0000000..6dcef8c --- /dev/null +++ b/db_lab/Properties/Resources.Designer.cs @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программным средством. +// Версия среды выполнения: 4.0.30319.42000 +// +// Изменения в этом файле могут привести к неправильному поведению и будут утрачены, если +// код создан повторно. +// +//------------------------------------------------------------------------------ + +namespace db_lab.Properties +{ + + + /// + /// Класс ресурсов со строгим типом для поиска локализованных строк и пр. + /// + // Этот класс был автоматически создан при помощи StronglyTypedResourceBuilder + // класс с помощью таких средств, как ResGen или Visual Studio. + // Для добавления или удаления члена измените файл .ResX, а затем перезапустите ResGen + // с параметром /str или заново постройте свой VS-проект. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources + { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() + { + } + + /// + /// Возврат кэшированного экземпляра ResourceManager, используемого этим классом. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager + { + get + { + if ((resourceMan == null)) + { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("db_lab.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Переопределяет свойство CurrentUICulture текущего потока для всех + /// подстановки ресурсов с помощью этого класса ресурсов со строгим типом. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture + { + get + { + return resourceCulture; + } + set + { + resourceCulture = value; + } + } + } +} diff --git a/db_lab/Properties/Resources.resx b/db_lab/Properties/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/db_lab/Properties/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/db_lab/Properties/Settings.Designer.cs b/db_lab/Properties/Settings.Designer.cs new file mode 100644 index 0000000..90e8a3f --- /dev/null +++ b/db_lab/Properties/Settings.Designer.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace db_lab.Properties +{ + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase + { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default + { + get + { + return defaultInstance; + } + } + } +} diff --git a/db_lab/Properties/Settings.settings b/db_lab/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/db_lab/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/db_lab/RaportForm.Designer.cs b/db_lab/RaportForm.Designer.cs new file mode 100644 index 0000000..fc30b11 --- /dev/null +++ b/db_lab/RaportForm.Designer.cs @@ -0,0 +1,39 @@ +namespace db_lab +{ + partial class RaportForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Text = "RaportForm"; + } + + #endregion + } +} \ No newline at end of file diff --git a/db_lab/RaportForm.cs b/db_lab/RaportForm.cs new file mode 100644 index 0000000..bf138a2 --- /dev/null +++ b/db_lab/RaportForm.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace db_lab +{ + public partial class RaportForm : Form + { + public RaportForm() + { + InitializeComponent(); + } + } +} diff --git a/db_lab/bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll b/db_lab/bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll new file mode 100644 index 0000000..6031ba1 Binary files /dev/null and b/db_lab/bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll differ diff --git a/db_lab/bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml b/db_lab/bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml new file mode 100644 index 0000000..e75808a --- /dev/null +++ b/db_lab/bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml @@ -0,0 +1,417 @@ + + + + Microsoft.Bcl.AsyncInterfaces + + + + Provides the core logic for implementing a manual-reset or . + + + + + The callback to invoke when the operation completes if was called before the operation completed, + or if the operation completed before a callback was supplied, + or null if a callback hasn't yet been provided and the operation hasn't yet completed. + + + + State to pass to . + + + to flow to the callback, or null if no flowing is required. + + + + A "captured" or with which to invoke the callback, + or null if no special context is required. + + + + Whether the current operation has completed. + + + The result with which the operation succeeded, or the default value if it hasn't yet completed or failed. + + + The exception with which the operation failed, or null if it hasn't yet completed or completed successfully. + + + The current version of this value, used to help prevent misuse. + + + Gets or sets whether to force continuations to run asynchronously. + Continuations may run asynchronously if this is false, but they'll never run synchronously if this is true. + + + Resets to prepare for the next operation. + + + Completes with a successful result. + The result. + + + Complets with an error. + + + + Gets the operation version. + + + Gets the status of the operation. + Opaque value that was provided to the 's constructor. + + + Gets the result of the operation. + Opaque value that was provided to the 's constructor. + + + Schedules the continuation action for this operation. + The continuation to invoke when the operation has completed. + The state object to pass to when it's invoked. + Opaque value that was provided to the 's constructor. + The flags describing the behavior of the continuation. + + + Ensures that the specified token matches the current version. + The token supplied by . + + + Signals that the operation has completed. Invoked after the result or error has been set. + + + + Invokes the continuation with the appropriate captured context / scheduler. + This assumes that if is not null we're already + running within that . + + + + Provides a set of static methods for configuring -related behaviors on asynchronous enumerables and disposables. + + + Configures how awaits on the tasks returned from an async disposable will be performed. + The source async disposable. + Whether to capture and marshal back to the current context. + The configured async disposable. + + + Configures how awaits on the tasks returned from an async iteration will be performed. + The type of the objects being iterated. + The source enumerable being iterated. + Whether to capture and marshal back to the current context. + The configured enumerable. + + + Sets the to be passed to when iterating. + The type of the objects being iterated. + The source enumerable being iterated. + The to use. + The configured enumerable. + + + Represents a builder for asynchronous iterators. + + + Creates an instance of the struct. + The initialized instance. + + + Invokes on the state machine while guarding the . + The type of the state machine. + The state machine instance, passed by reference. + + + Schedules the state machine to proceed to the next action when the specified awaiter completes. + The type of the awaiter. + The type of the state machine. + The awaiter. + The state machine. + + + Schedules the state machine to proceed to the next action when the specified awaiter completes. + The type of the awaiter. + The type of the state machine. + The awaiter. + The state machine. + + + Marks iteration as being completed, whether successfully or otherwise. + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + Indicates whether a method is an asynchronous iterator. + + + Initializes a new instance of the class. + The type object for the underlying state machine type that's used to implement a state machine method. + + + Provides a type that can be used to configure how awaits on an are performed. + + + Asynchronously releases the unmanaged resources used by the . + A task that represents the asynchronous dispose operation. + + + Provides an awaitable async enumerable that enables cancelable iteration and configured awaits. + + + Configures how awaits on the tasks returned from an async iteration will be performed. + Whether to capture and marshal back to the current context. + The configured enumerable. + This will replace any previous value set by for this iteration. + + + Sets the to be passed to when iterating. + The to use. + The configured enumerable. + This will replace any previous set by for this iteration. + + + Returns an enumerator that iterates asynchronously through collections that enables cancelable iteration and configured awaits. + An enumerator for the class. + + + Provides an awaitable async enumerator that enables cancelable iteration and configured awaits. + + + Advances the enumerator asynchronously to the next element of the collection. + + A that will complete with a result of true + if the enumerator was successfully advanced to the next element, or false if the enumerator has + passed the end of the collection. + + + + Gets the element in the collection at the current position of the enumerator. + + + + Performs application-defined tasks associated with freeing, releasing, or + resetting unmanaged resources asynchronously. + + + + Allows users of async-enumerable methods to mark the parameter that should receive the cancellation token value from . + + + Initializes a new instance of the class. + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + Exposes an enumerator that provides asynchronous iteration over values of a specified type. + The type of values to enumerate. + + + Returns an enumerator that iterates asynchronously through the collection. + A that may be used to cancel the asynchronous iteration. + An enumerator that can be used to iterate asynchronously through the collection. + + + Supports a simple asynchronous iteration over a generic collection. + The type of objects to enumerate. + + + Advances the enumerator asynchronously to the next element of the collection. + + A that will complete with a result of true if the enumerator + was successfully advanced to the next element, or false if the enumerator has passed the end + of the collection. + + + + Gets the element in the collection at the current position of the enumerator. + + + Provides a mechanism for releasing unmanaged resources asynchronously. + + + + Performs application-defined tasks associated with freeing, releasing, or + resetting unmanaged resources asynchronously. + + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + Specifies that an output may be null even if the corresponding type disallows it. + + + Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns. + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + + Gets the return value condition. + + + Specifies that the output will be non-null if the named parameter is non-null. + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + Applied to a method that will never return under any circumstance. + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + Initializes the attribute with the specified parameter value. + + The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to + the associated parameter matches this value. + + + + Gets the condition parameter value. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + diff --git a/db_lab/bin/Debug/Microsoft.Bcl.HashCode.dll b/db_lab/bin/Debug/Microsoft.Bcl.HashCode.dll new file mode 100644 index 0000000..3f97f6e Binary files /dev/null and b/db_lab/bin/Debug/Microsoft.Bcl.HashCode.dll differ diff --git a/db_lab/bin/Debug/Microsoft.Bcl.HashCode.xml b/db_lab/bin/Debug/Microsoft.Bcl.HashCode.xml new file mode 100644 index 0000000..d5c6c3d --- /dev/null +++ b/db_lab/bin/Debug/Microsoft.Bcl.HashCode.xml @@ -0,0 +1,34 @@ + + + + Microsoft.Bcl.HashCode + + + + + Rotates the specified value left by the specified number of bits. + Similar in behavior to the x86 instruction ROL. + + The value to rotate. + The number of bits to rotate by. + Any value outside the range [0..31] is treated as congruent mod 32. + The rotated value. + + + + Rotates the specified value left by the specified number of bits. + Similar in behavior to the x86 instruction ROL. + + The value to rotate. + The number of bits to rotate by. + Any value outside the range [0..63] is treated as congruent mod 64. + The rotated value. + + + HashCode is a mutable struct and should not be compared with other HashCodes. + + + HashCode is a mutable struct and should not be compared with other HashCodes. Use ToHashCode to retrieve the computed hash code. + + + diff --git a/db_lab/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/db_lab/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 0000000..3298f8d Binary files /dev/null and b/db_lab/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/db_lab/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/db_lab/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml new file mode 100644 index 0000000..ca535c8 --- /dev/null +++ b/db_lab/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml @@ -0,0 +1,2515 @@ + + + + Microsoft.Extensions.DependencyInjection.Abstractions + + + + + Helper code for the various activator services. + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The service provider used to resolve dependencies + The type to activate + Constructor arguments not provided by the . + An activated object of type instanceType + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate instanceType using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate type T using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The type to activate + The service provider used to resolve dependencies + Constructor arguments not provided by the . + An activated object of type T + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The type of the service + The service provider used to resolve dependencies + The resolved service or created instance + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The service provider + The type of the service + The resolved service or created instance + + + + Marks the constructor to be used when activating type using . + + + + + An implementation that implements . + + + + + Initializes a new instance of the struct. + Wraps an instance of . + + The instance to wrap. + + + + + + + + + + + + + Extension methods for adding and removing services to an . + + + + + Adds the specified to the . + + The . + The to add. + A reference to the current instance of . + + + + Adds a sequence of to the . + + The . + The s to add. + A reference to the current instance of . + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The to add. + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The s to add. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds a if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The . + + Use when registering a service implementation of a + service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Adds the specified s if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The s. + + Use when registering a service + implementation of a service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Removes the first service in with the same service type + as and adds to the collection. + + The . + The to replace with. + The for chaining. + + + + Removes all services of type in . + + The . + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The for chaining. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + The service key. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Removes all services of type in . + + The . + The service key. + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The service key. + The for chaining. + + + + Indicates that the parameter should be bound using the keyed service registered with the specified key. + + + + + Creates a new instance. + + The key of the keyed service to bind to. + + + + The key of the keyed service to bind to. + + + + + IKeyedServiceProvider is a service provider that can be used to retrieve services using a key in addition + to a type. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type serviceType. -or- null if there is no service object of type serviceType. + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + The of the service. + A service object of type . + Throws an exception if the cannot create the object. + + + + Statics for use with . + + + + + Represents a key that matches any key. + + + + + Specifies the contract for a collection of service descriptors. + + + + + Provides an extension point for creating a container specific builder and an . + + + + + Creates a container builder from an . + + The collection of services + A container builder that can be used to create an . + + + + Creates an from the container builder. + + The container builder + An + + + + Optional service used to determine if the specified type with the specified service key is available + from the . + + + + + Determines if the specified service type with the specified service key is available from the + . + + An object that specifies the type of service object to test. + The of the service. + true if the specified service is a available, false if it is not. + + + + Optional service used to determine if the specified type is available from the . + + + + + Determines if the specified service type is available from the . + + An object that specifies the type of service object to test. + true if the specified service is a available, false if it is not. + + + + The method ends the scope lifetime. Once Dispose + is called, any scoped services that have been resolved from + will be + disposed. + + + + + The used to resolve dependencies from the scope. + + + + + A factory for creating instances of , which is used to create + services within a scope. + + + + + Create an which + contains an used to resolve dependencies from a + newly created scope. + + + An controlling the + lifetime of the scope. Once this is disposed, any scoped services that have been resolved + from the + will also be disposed. + + + + + Optional contract used by + to resolve services if supported by . + + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + A service object of type . + Throws an exception if the cannot create the object. + + + + The result of . + + The to get service arguments from. + Additional constructor arguments. + The instantiated type. + + + + The result of . A delegate to specify a factory method to call to instantiate an instance of type `T` + + The type of the instance being returned + The to get service arguments from. + Additional constructor arguments. + An instance of T + + + + Default implementation of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Makes this collection read-only. + + + After the collection is marked as read-only, any further attempt to modify it throws an . + + + + + Extension methods for adding services to an . + + + Extension methods for adding services to an . + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Describes a service with its service type, implementation, and lifetime. + + + + + Initializes a new instance of with the specified . + + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified . + + The of the service. + A factory used for creating service instances. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + A factory used for creating service instances. + The of the service. + + + + Gets the of the service. + + + + + Get the key of the service, if applicable. + + + + + Gets the of the service. + + + + + Gets the that implements the service. + + + + + Gets the that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the factory used for creating service instances. + + + + + Gets the factory used for creating Keyed service instances. + + + + + Indicates whether the service is a keyed service. + + + + + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + ServiceKeyAttribute can be specified on a parameter to inject the key that was used for + registration/resolution. + + + + + Specifies the lifetime of a service in an . + + + + + Specifies that a single instance of the service will be created. + + + + + Specifies that a new instance of the service will be created for each scope. + + + In ASP.NET Core applications a scope is created around each server request. + + + + + Specifies that a new instance of the service will be created every time it is requested. + + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An enumeration of services of type . + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + A that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + + Indicates that certain members on a specified are accessed dynamically, + for example through . + + + This allows tools to understand which members are being accessed during the execution + of a program. + + This attribute is valid on members whose type is or . + + When this attribute is applied to a location of type , the assumption is + that the string represents a fully qualified type name. + + When this attribute is applied to a class, interface, or struct, the members specified + can be accessed dynamically on instances returned from calling + on instances of that class, interface, or struct. + + If the attribute is applied to a method it's treated as a special case and it implies + the attribute should be applied to the "this" parameter of the method. As such the attribute + should only be used on instance methods of types assignable to System.Type (or string, but no methods + will use it there). + + + + + Initializes a new instance of the class + with the specified member types. + + The types of members dynamically accessed. + + + + Gets the which specifies the type + of members dynamically accessed. + + + + + Specifies the types of members that are dynamically accessed. + + This enumeration has a attribute that allows a + bitwise combination of its member values. + + + + + Specifies no members. + + + + + Specifies the default, parameterless public constructor. + + + + + Specifies all public constructors. + + + + + Specifies all non-public constructors. + + + + + Specifies all public methods. + + + + + Specifies all non-public methods. + + + + + Specifies all public fields. + + + + + Specifies all non-public fields. + + + + + Specifies all public nested types. + + + + + Specifies all non-public nested types. + + + + + Specifies all public properties. + + + + + Specifies all non-public properties. + + + + + Specifies all public events. + + + + + Specifies all non-public events. + + + + + Specifies all interfaces implemented by the type. + + + + + Specifies all members. + + + + + Suppresses reporting of a specific rule violation, allowing multiple suppressions on a + single code artifact. + + + is different than + in that it doesn't have a + . So it is always preserved in the compiled assembly. + + + + + Initializes a new instance of the + class, specifying the category of the tool and the identifier for an analysis rule. + + The category for the attribute. + The identifier of the analysis rule the attribute applies to. + + + + Gets the category identifying the classification of the attribute. + + + The property describes the tool or tool analysis category + for which a message suppression attribute applies. + + + + + Gets the identifier of the analysis tool rule to be suppressed. + + + Concatenated together, the and + properties form a unique check identifier. + + + + + Gets or sets the scope of the code that is relevant for the attribute. + + + The Scope property is an optional argument that specifies the metadata scope for which + the attribute is relevant. + + + + + Gets or sets a fully qualified path that represents the target of the attribute. + + + The property is an optional argument identifying the analysis target + of the attribute. An example value is "System.IO.Stream.ctor():System.Void". + Because it is fully qualified, it can be long, particularly for targets such as parameters. + The analysis tool user interface should be capable of automatically formatting the parameter. + + + + + Gets or sets an optional argument expanding on exclusion criteria. + + + The property is an optional argument that specifies additional + exclusion where the literal metadata target is not sufficiently precise. For example, + the cannot be applied within a method, + and it may be desirable to suppress a violation against a statement in the method that will + give a rule violation, but not against all statements in the method. + + + + + Gets or sets the justification for suppressing the code analysis message. + + + + + Indicates that the specified method requires the ability to generate new code at runtime, + for example through . + + + This allows tools to understand which methods are unsafe to call when compiling ahead of time. + + + + + Initializes a new instance of the class + with the specified message. + + + A message that contains information about the usage of dynamic code. + + + + + Gets a message that contains information about the usage of dynamic code. + + + + + Gets or sets an optional URL that contains more information about the method, + why it requires dynamic code, and what options a consumer has to deal with it. + + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + Specifies that an output may be null even if the corresponding type disallows it. + + + Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns. + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + + Gets the return value condition. + + + Specifies that the output will be non-null if the named parameter is non-null. + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + Applied to a method that will never return under any circumstance. + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + Initializes the attribute with the specified parameter value. + + The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to + the associated parameter matches this value. + + + + Gets the condition parameter value. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + No service for type '{0}' has been registered. + + + The service collection cannot be modified because it is read-only. + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + Multiple constructors were marked with {0}. + + + Constructor marked with {0} does not accept all given argument types. + + + Instances of abstract classes cannot be created. + + + Multiple constructors for type '{0}' were found with length {1}. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and all parameters of a public constructor are either registered as services or passed as arguments. Also ensure no extraneous arguments are provided. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + This service provider doesn't support keyed services. + + + This service descriptor is keyed. Your service provider may not support keyed services. + + + This service descriptor is not keyed. + + + diff --git a/db_lab/bin/Debug/Microsoft.Extensions.Logging.Abstractions.dll b/db_lab/bin/Debug/Microsoft.Extensions.Logging.Abstractions.dll new file mode 100644 index 0000000..b8dd652 Binary files /dev/null and b/db_lab/bin/Debug/Microsoft.Extensions.Logging.Abstractions.dll differ diff --git a/db_lab/bin/Debug/Microsoft.Extensions.Logging.Abstractions.xml b/db_lab/bin/Debug/Microsoft.Extensions.Logging.Abstractions.xml new file mode 100644 index 0000000..105e4d8 --- /dev/null +++ b/db_lab/bin/Debug/Microsoft.Extensions.Logging.Abstractions.xml @@ -0,0 +1,1350 @@ + + + + Microsoft.Extensions.Logging.Abstractions + + + + + Identifies a logging event. The primary identifier is the "Id" property, with the "Name" property providing a short description of this type of event. + + + + + Implicitly creates an EventId from the given . + + The to convert to an EventId. + + + + Checks if two specified instances have the same value. They are equal if they have the same Id. + + The first . + The second . + if the objects are equal. + + + + Checks if two specified instances have different values. + + The first . + The second . + if the objects are not equal. + + + + Initializes an instance of the struct. + + The numeric identifier for this event. + The name of this event. + + + + Gets the numeric identifier for this event. + + + + + Gets the name of this event. + + + + + + + + Indicates whether the current object is equal to another object of the same type. Two events are equal if they have the same id. + + An object to compare with this object. + if the current object is equal to the other parameter; otherwise, . + + + + + + + + + + LogValues to enable formatting options supported by . + This also enables using {NamedformatItem} in the format string. + + + + + Represents a storage of common scope data. + + + + + Executes callback for each currently active scope objects in order of creation. + All callbacks are guaranteed to be called inline from this method. + + The callback to be executed for every scope object + The state object to be passed into the callback + The type of state to accept. + + + + Adds scope object to the list + + The scope object + The token that removes scope on dispose. + + + + Represents a type used to perform logging. + + Aggregates most logging patterns to a single method. + + + + Writes a log entry. + + Entry will be written on this level. + Id of the event. + The entry to be written. Can be also an object. + The exception related to this entry. + Function to create a message of the and . + The type of the object to be written. + + + + Checks if the given is enabled. + + Level to be checked. + true if enabled. + + + + Begins a logical operation scope. + + The identifier for the scope. + The type of the state to begin scope for. + An that ends the logical operation scope on dispose. + + + + Represents a type used to configure the logging system and create instances of from + the registered s. + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The . + + + + Adds an to the logging system. + + The . + + + + Represents a type that can create instances of . + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The instance of that was created. + + + + A generic interface for logging where the category name is derived from the specified + type name. + Generally used to enable activation of a named from dependency injection. + + The type whose name is used for the logger category name. + + + + An interface for configuring logging providers. + + + + + Gets the where Logging services are configured. + + + + + Represents a that is able to consume external scope information. + + + + + Sets external scope information source for logger provider. + + The provider of scope data. + + + + Options for and its overloads + + + + + Gets or sets the flag to skip IsEnabled check for the logging method. + + + + + Holds the information for a single log entry. + + + + + Initializes an instance of the LogEntry struct. + + The log level. + The category name for the log. + The log event Id. + The state for which log is being written. + The log exception. + The formatter. + + + + Gets the LogLevel + + + + + Gets the log category + + + + + Gets the log EventId + + + + + Gets the TState + + + + + Gets the log exception + + + + + Gets the formatter + + + + + Minimalistic logger that does nothing. + + + + + Returns the shared instance of . + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + An used to create instance of + that logs nothing. + + + + + Creates a new instance. + + + + + Returns the shared instance of . + + + + + + This returns a instance which logs nothing. + + + + + + This method ignores the parameter and does nothing. + + + + + + + + Provider for the . + + + + + Returns an instance of . + + + + + + + + + + + Minimalistic logger that does nothing. + + + + + Returns an instance of . + + An instance of . + + + + + + + + This method ignores the parameters and does nothing. + + + + + + + + ILogger extension methods for common scenarios. + + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, "Processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug("Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, "Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace("Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, "Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation("Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, "Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning("Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, "Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError("Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, "Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical("Processing request from {Address}", address) + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats the message and creates a scope. + + The to create the scope in. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + A disposable scope object. Can be null. + + using(logger.BeginScope("Processing request from {Address}", address)) + { + } + + + + + Default implementation of + + + + + Creates a new . + + + + + + + + + + + ILoggerFactory extension methods for common scenarios. + + + + + Creates a new instance using the full name of the given type. + + The factory. + The type. + The that was created. + + + + Creates a new instance using the full name of the given . + + The factory. + The type. + The that was created. + + + + Creates delegates which can be later cached to log messages in a performant way. + + + + + Creates a delegate which can be invoked to create a log scope. + + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Provides information to guide the production of a strongly-typed logging method. + + + The method this attribute is applied to: + - Must be a partial method. + - Must return void. + - Must not be generic. + - Must have an as one of its parameters. + - Must have a as one of its parameters. + - None of the parameters can be generic. + + + + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log event Id. + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + Format string of the log message. + + + + Gets the logging event id for the logging method. + + + + + Gets or sets the logging event name for the logging method. + + + This will equal the method name if not specified. + + + + + Gets the logging level for the logging method. + + + + + Gets the message text for the logging method. + + + + + Gets the flag to skip IsEnabled check for the logging method. + + + + + Delegates to a new instance using the full name of the given type, created by the + provided . + + The type. + + + + Creates a new . + + The factory. + + + + + + + + + + + + + Defines logging severity levels. + + + + + Logs that contain the most detailed messages. These messages may contain sensitive application data. + These messages are disabled by default and should never be enabled in a production environment. + + + + + Logs that are used for interactive investigation during development. These logs should primarily contain + information useful for debugging and have no long-term value. + + + + + Logs that track the general flow of the application. These logs should have long-term value. + + + + + Logs that highlight an abnormal or unexpected event in the application flow, but do not otherwise cause the + application execution to stop. + + + + + Logs that highlight when the current flow of execution is stopped due to a failure. These should indicate a + failure in the current activity, not an application-wide failure. + + + + + Logs that describe an unrecoverable application or system crash, or a catastrophic failure that requires + immediate attention. + + + + + Not used for writing log messages. Specifies that a logging category should not write any messages. + + + + + Formatter to convert the named format items like {NamedformatItem} to format. + + + + + Scope provider that does nothing. + + + + + Returns a cached instance of . + + + + + + + + + + + An empty scope without any logic + + + + + + + + Pretty print a type name. + + The . + true to print a fully qualified name. + true to include generic parameter names. + true to include generic parameters. + Character to use as a delimiter in nested type names + The pretty printed type name. + + + + Get a pinnable reference to the builder. + Does not ensure there is a null char after + This overload is pattern matched in the C# 7.3+ compiler so you can omit + the explicit method call, and write eg "fixed (char* c = builder)" + + + + + Get a pinnable reference to the builder. + + Ensures that the builder has a null char after + + + Returns the underlying storage of the builder. + + + + Returns a span around the contents of the builder. + + Ensures that the builder has a null char after + + + + Resize the internal buffer either by doubling current buffer size or + by adding to + whichever is greater. + + + Number of chars requested beyond current position. + + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + The format string '{0}' does not have the expected number of named parameters. Expected {1} parameter(s) but found {2} parameter(s). + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + Specifies that an output may be null even if the corresponding type disallows it. + + + Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns. + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + + Gets the return value condition. + + + Specifies that the output will be non-null if the named parameter is non-null. + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + Applied to a method that will never return under any circumstance. + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + Initializes the attribute with the specified parameter value. + + The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to + the associated parameter matches this value. + + + + Gets the condition parameter value. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + diff --git a/db_lab/bin/Debug/Npgsql.dll b/db_lab/bin/Debug/Npgsql.dll new file mode 100644 index 0000000..8d6c8a7 Binary files /dev/null and b/db_lab/bin/Debug/Npgsql.dll differ diff --git a/db_lab/bin/Debug/Npgsql.xml b/db_lab/bin/Debug/Npgsql.xml new file mode 100644 index 0000000..ad3fad0 --- /dev/null +++ b/db_lab/bin/Debug/Npgsql.xml @@ -0,0 +1,11559 @@ + + + + Npgsql + + + + + Indicates that the specified method requires the ability to generate new code at runtime, + for example through . + + + This allows tools to understand which methods are unsafe to call when compiling ahead of time. + + + + + Initializes a new instance of the class + with the specified message. + + + A message that contains information about the usage of dynamic code. + + + + + Gets a message that contains information about the usage of dynamic code. + + + + + Gets or sets an optional URL that contains more information about the method, + why it requires dynamic code, and what options a consumer has to deal with it. + + + + + Initializes a new instance of the class. + + + + Indicates that an API is experimental and it may change in the future. + + + Initializes a new instance of the class, specifying the ID that the compiler will use when reporting a use of the API the attribute applies to. + The ID that the compiler will use when reporting a use of the API the attribute applies to. + + + Gets the ID that the compiler will use when reporting a use of the API the attribute applies to. + The unique diagnostic ID. + + + Gets or sets the URL for corresponding documentation. + The API accepts a format string instead of an actual URL, creating a generic URL that includes the diagnostic ID. + The format string that represents a URL to corresponding documentation. + + + + Exception thrown when the program executes an instruction that was thought to be unreachable. + + + + + Initializes a new instance of the class with the default error message. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified message. + + An optional message associated with this attribute instance. + + + + Returns the optional message associated with this attribute instance. + + + + + Returns the optional URL associated with this attribute instance. + + + + + Gets the singleton instance. + + + + + Determines whether two object references refer to the same object instance. + + The first object to compare. + The second object to compare. + + if both and refer to the same object instance + or if both are ; otherwise, . + + + This API is a wrapper around . + It is not necessarily equivalent to calling . + + + + + Returns a hash code for the specified object. The returned hash code is based on the object + identity, not on the contents of the object. + + The object for which to retrieve the hash code. + A hash code for the identity of . + + This API is a wrapper around . + It is not necessarily equivalent to calling . + + + + + Returns a reference to the 0th element of the ReadOnlySpan. If the ReadOnlySpan is empty, returns a reference to fake non-null pointer. Such a reference + can be used for pinning but must never be dereferenced. This is useful for interop with methods that do not accept null pointers for zero-sized buffers. + + + + + Returns a reference to the 0th element of the ReadOnlySpan. If the ReadOnlySpan is empty, returns a reference to fake non-null pointer. Such a reference + can be used for pinning but must never be dereferenced. This is useful for interop with methods that do not accept null pointers for zero-sized buffers. + + + + + Decodes the specified to s using the specified + and outputs the result to . + + The which represents how the data in is encoded. + The to decode to characters. + The destination buffer to which the decoded characters will be written. + The number of chars written to . + Thrown if is not large enough to contain the encoded form of . + Thrown if contains data that cannot be decoded and is configured + to throw an exception when such data is seen. + + + + A set of extension methods to to allow runtime compatibility. + + + + + Appends the provided to the . + + The to append to. + The to append. + + + + Gets a that will complete when this completes, when the specified timeout expires, or when the specified has cancellation requested. + + The representing the asynchronous wait. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The representing the asynchronous wait. + This method reproduces new to the .NET 6.0 API .WaitAsync. + + + + Note that this message doesn't actually contain the data, but only the length. Data is processed + directly from the connector's buffer. + + + + + DataRow is special in that it does not parse the actual contents of the backend message, + because in sequential mode the message will be traversed and processed sequentially by + . + + + + + Error and notice message field codes + + + + + A RowDescription message sent from the backend. + + + See https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + A descriptive record on a single field received from PostgreSQL. + See RowDescription in https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + The field name. + + + + + The object ID of the field's data type. + + + + + The data type size (see pg_type.typlen). Note that negative values denote variable-width types. + + + + + The type modifier (see pg_attribute.atttypmod). The meaning of the modifier is type-specific. + + + + + If the field can be identified as a column of a specific table, the object ID of the table; otherwise zero. + + + + + If the field can be identified as a column of a specific table, the attribute number of the column; otherwise zero. + + + + + The format code being used for the field. + Currently will be text or binary. + In a RowDescription returned from the statement variant of Describe, the format code is not yet known and will always be zero. + + + + + Returns a string that represents the current object. + + + + + Base class for all classes which represent a message sent by the PostgreSQL backend. + + + + + Specifies the type of SQL statement, e.g. SELECT + + + + Streaming + + + Entire value should be buffered + + + Fixed size value should be buffered + + + Custom requirements + + + + CompositeFieldInfo constructor. + + Name of the field. + Type info for reading/writing. + The nominal field type, this may differ from the typeInfo.PgTypeId when the field is a domain type. + + + + Create temporary storage for all values that come before the constructor parameters can be saturated. + + + + + A reference to the type that houses the static method points to. + The continuation + + + A reference to the type that houses the static method points to. + The continuation + + + Note that for BIT(1), this resolver will return a bool by default, to align with SqlClient + (see discussion https://github.com/npgsql/npgsql/pull/362#issuecomment-59622101). + + + A converter to map strongly typed apis onto boxed converter results to produce a strongly typed converter over T. + + + Special value converter to be able to use struct converters as System.Nullable converters, it delegates all behavior to the effective converter. + + + Big endian array of numeric digits + + + + + + + If the destination ends up being too small the builder allocates instead + + + + + + + + + Whether the input consists of any non zero bits + + + Adapted from BigInteger, to allow us to operate directly on stack allocated bits + + + + Hacky temporary measure used by EFCore.PG to extract user-configured enum mappings. Accessed via reflection only. + + + + + A factory which get generate instances of , which describe a database + and the types it contains. When first connecting to a database, Npgsql will attempt to load information + about it via this factory. + + + + + Given a connection, loads all necessary information about the connected database, e.g. its types. + A factory should only handle the exact database type it was meant for, and return null otherwise. + + + An object describing the database to which is connected, or null if the + database isn't of the correct type and isn't handled by this factory. + + + + + An Npgsql resolver for type info. Used by Npgsql to read and write values to PostgreSQL. + + + + + Resolve a type info for a given type and data type name, at least one value will be non-null. + + The clr type being requested. + The postgres type being requested. + Used for configuration state and Npgsql type info or PostgreSQL type catalog lookups. + A result, or null if there was no match. + + + + Represents a connection to a PostgreSQL backend. Unlike NpgsqlConnection objects, which are + exposed to users, connectors are internal to Npgsql and are recycled by the connection pool. + + + + + The physical connection socket to the backend. + + + + + The physical connection stream to the backend, without anything on top. + + + + + The physical connection stream to the backend, layered with an SSL/TLS stream if in secure mode. + + + + + The parsed connection string. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + Buffer used for reading data. + + + + + If we read a data row that's bigger than , we allocate an oversize buffer. + The original (smaller) buffer is stored here, and restored when the connection is reset. + + + + + Buffer used for writing data. + + + + + The secret key of the backend for this connector, used for query cancellation. + + + + + The process ID of the backend for this connector. + + + + + The user name that has been inferred when the connector was opened + + + + + A unique ID identifying this connector, used for logging. Currently mapped to BackendProcessId + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + The current transaction status for this connector. + + + + + A transaction object for this connector. Since only one transaction can be in progress at any given time, + this instance is recycled. To check whether a transaction is currently in progress on this connector, + see . + + + + + The NpgsqlConnection that (currently) owns this connector. Null if the connector isn't + owned (i.e. idle in the pool) + + + + + The number of messages that were prepended to the current message chain, but not yet sent. + Note that this only tracks messages which produce a ReadyForQuery message + + + + + A ManualResetEventSlim used to make sure a cancellation request doesn't run + while we're reading responses for the prepended query + as we can't gracefully handle their cancellation. + + + + + If the connector is currently in COPY mode, holds a reference to the importer/exporter object. + Otherwise null. + + + + + Holds all run-time parameters received from the backend (via ParameterStatus messages) + + + + + Holds all run-time parameters in raw, binary format for efficient handling without allocations. + + + + + If this connector was broken, this contains the exception that caused the break. + + + + + + Used by the pool to indicate that I/O is currently in progress on this connector, so that another write + isn't started concurrently. Note that since we have only one write loop, this is only ever usedto + protect against an over-capacity writes into a connector that's currently *asynchronously* writing. + + + It is guaranteed that the currently-executing + Specifically, reading may occur - and the connector may even be returned to the pool - before this is + released. + + + + + + + + + + + + A lock that's taken while a cancellation is being delivered; new queries are blocked until the + cancellation is delivered. This reduces the chance that a cancellation meant for a previous + command will accidentally cancel a later one, see #615. + + + + + A lock that's taken to make sure no other concurrent operation is running. + Break takes it to set the state of the connector. + Anyone else should immediately check the state and exit + if the connector is closed. + + + + + A lock that's used to wait for the Cleanup to complete while breaking the connection. + + + + + The command currently being executed by the connector, null otherwise. + Used only for concurrent use error reporting purposes. + + + + + The connector source (e.g. pool) from where this connector came, and to which it will be returned. + Note that in multi-host scenarios, this references the host-specific rather than the + . + + + + + Contains the UTC timestamp when this connector was opened, used to implement + . + + + + + The minimum timeout that can be set on internal commands such as COMMIT, ROLLBACK. + + Precision is seconds + + + + Gets the current state of the connector + + + + + Returns whether the connector is open, regardless of any task it is currently performing + + + + + Opens the physical connection to the server. + + Usually called by the RequestConnector + Method of the connection pool manager. + + + + Prepends a message to be sent at the beginning of the next message chain. + + + + + Reads backend messages and discards them, stopping only after a message of the given type has + been seen. Only a sync I/O version of this method exists - in async flows we inline the loop + rather than calling an additional async method, in order to avoid the overhead. + + + + + Handles a new transaction indicator received on a ReadyForQuery message + + + + + Returns whether SSL is being used for the connection + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Creates another connector and sends a cancel request through it for this connector. This method never throws, but returns + whether the cancellation attempt failed. + + + + if the cancellation request was successfully delivered, or if it was skipped because a previous + request was already sent. if the cancellation request could not be delivered because of an exception + (the method logs internally). + + + This does not indicate whether the cancellation attempt was successful on the PostgreSQL side - only if the request was + delivered. + + + + + + Starts a new cancellable operation within an ongoing user action. This should only be used if a single user + action spans several different actions which each has its own cancellation tokens. For example, a command + execution is a single user action, but spans ExecuteReaderQuery, NextResult, Read and so forth. + + + Only one level of nested operations is supported. It is an error to call this method if it has previously + been called, and the returned was not disposed. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the + cancellation, and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or + a timeout occurs, followed by a client-side socket cancellation once + has elapsed. If , + PostgreSQL cancellation will be skipped and client-socket cancellation will occur immediately. + + + + + Closes ongoing operations, i.e. an open reader exists or a COPY operation still in progress, as + part of a connection close. + + + + + Called when an unexpected message has been received during an action. Breaks the + connector and returns the appropriate message. + + + + + Called when a connector becomes completely unusable, e.g. when an unexpected I/O exception is raised or when + we lose protocol sync. + Note that fatal errors during the Open phase do *not* pass through here. + + The exception that caused the break. + The exception given in for chaining calls. + + + + Closes the socket and cleans up client-side resources associated with this connector. + + + This method doesn't actually perform any meaningful I/O, and therefore is sync-only. + + + + + Called when a pooled connection is closed, and its connector is returned to the pool. + Resets the connector back to its initial state, releasing server-side sources + (e.g. prepared statements), resetting parameters to their defaults, and resetting client-side + state + + + + + The connector may have allocated an oversize read buffer, to hold big rows in non-sequential reading. + This switches us back to the original one and returns the buffer to . + + + + + Starts a user action. This makes sure that another action isn't already in progress, handles synchronization with keepalive, + and sets up cancellation. + + The new state to be set when entering this user action. + + The that is starting execution - if an is + thrown, it will reference this. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the cancellation, + and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or a timeout + occurs, followed by a client-side socket cancellation once has + elapsed. If , PostgreSQL cancellation will be skipped and client-socket cancellation will occur + immediately. + + + + + An IDisposable wrapper around . + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Creates and returns a object associated with the . + + The text of the query. + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + This Stream is placed between NegotiateStream and the socket's NetworkStream (or SSLStream). It intercepts + traffic and performs the following operations: + * Outgoing messages are framed in PostgreSQL's PasswordMessage, and incoming are stripped of it. + * NegotiateStream frames payloads with a 5-byte header, which PostgreSQL doesn't understand. This header is + stripped from outgoing messages and added to incoming ones. + + + See https://referencesource.microsoft.com/#System/net/System/Net/_StreamFramer.cs,16417e735f0e9530,references + + + + + Expresses the exact state of a connector. + + + + + The connector has either not yet been opened or has been closed. + + + + + The connector is currently connecting to a PostgreSQL server. + + + + + The connector is connected and may be used to send a new query. + + + + + The connector is waiting for a response to a query which has been sent to the server. + + + + + The connector is currently fetching and processing query results. + + + + + The connector is currently waiting for asynchronous notifications to arrive. + + + + + The connection was broken because an unexpected error occurred which left it in an unknown state. + This state isn't implemented yet. + + + + + The connector is engaged in a COPY operation. + + + + + The connector is engaged in streaming replication. + + + + + Currently not in a transaction block + + + + + Currently in a transaction block + + + + + Currently in a failed transaction block (queries will be rejected until block is ended) + + + + + A new transaction has been requested but not yet transmitted to the backend. It will be transmitted + prepended to the next query. + This is a client-side state option only, and is never transmitted from the backend. + + + + + Specifies how to load/parse DataRow messages as they're received from the backend. + + + + + Load DataRows in non-sequential mode + + + + + Load DataRows in sequential mode + + + + + Skip DataRow messages altogether + + + + + Base class for implementations which provide information about PostgreSQL and PostgreSQL-like databases + (e.g. type definitions, capabilities...). + + + + + The hostname of IP address of the database. + + + + + The TCP port of the database. + + + + + The database name. + + + + + The version of the PostgreSQL database we're connected to, as reported in the "server_version" parameter. + Exposed via . + + + + + The PostgreSQL version string as returned by the server_version option. Populated during loading. + + + + + Whether the backend supports range types. + + + + + Whether the backend supports multirange types. + + + + + Whether the backend supports enum types. + + + + + Whether the backend supports the CLOSE ALL statement. + + + + + Whether the backend supports advisory locks. + + + + + Whether the backend supports the DISCARD SEQUENCES statement. + + + + + Whether the backend supports the UNLISTEN statement. + + + + + Whether the backend supports the DISCARD TEMP statement. + + + + + Whether the backend supports the DISCARD statement. + + + + + Reports whether the backend uses the newer integer timestamp representation. + + + + + Whether the database supports transactions. + + + + + Indexes backend types by their type OID. + + + + + Indexes backend types by their PostgreSQL internal name, including namespace (e.g. pg_catalog.int4). + Only used for enums and composites. + + + + + Indexes backend types by their PostgreSQL name, not including namespace. + If more than one type exists with the same name (i.e. in different namespaces) this + table will contain an entry with a null value. + Only used for enums and composites. + + + + + Initializes the instance of . + + + + + Initializes the instance of . + + + + + Provides all PostgreSQL types detected in this database. + + + + + + Parses a PostgreSQL server version (e.g. 10.1, 9.6.3) and returns a CLR Version. + + + + + Registers a new database info factory, which is used to load information about databases. + + + + + A buffer used by Npgsql to read data from the socket efficiently. + Provides methods which decode different values types and tracks the current position. + + + + + Timeout for sync and async reads + + + + + The total byte length of the buffer. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + The minimum buffer size possible. + + + + + Ensures that bytes are available in the buffer, and if + not, reads from the socket until enough is available. + + + + + Does not perform any I/O - assuming that the bytes to be skipped are in the memory buffer. + + + + + Skip a given number of bytes. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. If any character could not be decoded, a question + mark character is returned instead of throwing an exception. + + + + + Seeks the first null terminator (\0) and returns the string up to it. Reads additional data from the network if a null + terminator isn't found in the buffered data. + + + + Does not throw ODE. + + + + A buffer used by Npgsql to write data to the socket efficiently. + Provides methods which encode different values types and tracks the current position. + + + + + Timeout for sync and async writes + + + + + The total byte length of the buffer. + + + + + The minimum buffer size possible. + + + + + Returns all contents currently written to the buffer (but not flushed). + Useful for pre-generating messages. + + + + + Whether this converter can handle the given format and with which buffer requirements. + + The data format. + Returns the buffer requirements. + Returns true if the given data format is supported. + The buffer requirements should not cover database NULL reads or writes, these are handled by the caller. + + + Never DbNull (struct types) + + + DbNull when *user code* + + + DbNull when value is null + + + DbNull when value is null or DBNull + + + + Gets the appropriate converter solely based on PgTypeId. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to read with based on the given field info. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to write with based on the given value. + + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are + cached once used. Array or other collection converters depend on this to cache their own converter - which wraps the element + converter - with the cache key being the element converter reference. + + + + ReadBytes without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + ReadBytesAsync without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + + + + + The stream length, if any + + + + Used by GetSchema to be able to attempt to resolve all type catalog types without exceptions. + + + + Whether options should return a portable identifier (data type name) to prevent any generated id (oid) confusion across backends, this comes with a perf penalty. + + + A reference to the type that houses the static method points to. + The continuation + + + Throws if the instance is a PgResolverTypeInfo. + + + When result is null, the value was interpreted to be a SQL NULL. + + + When result is null or DBNull, the value was interpreted to be a SQL NULL. + + + Whether Converter.TypeToConvert matches PgTypeInfo.Type, if it doesn't object apis should be used. + + + + Gets a that can be used to write to the underlying buffer. + + Blocking flushes during writes that were expected to be non-blocking and vice versa cause an exception to be thrown unless allowMixedIO is set to true, false by default. + The stream. + + + + Represents the fully-qualified name of a PostgreSQL type. + + + + + The maximum length of names in an unmodified PostgreSQL installation. + + + We need to respect this to get to valid names when deriving them (for multirange/arrays etc). + This does not include the namespace. + + + + + Well-known PostgreSQL data type names. + + + + Base field type shared between tables and composites. + + + + A discriminated union of and . + + + + + + + + + + When this flag is true, and both type and pgTypeId are non null, a default info for the pgTypeId can be returned if an exact match + can't be found. + + + + + + + + + + + + Signals whether a resolver based TypeInfo can keep its PgTypeId undecided or whether it should follow mapping.DataTypeName. + + + + Match when the clr type and datatype name both match. + It's also the only requirement that participates in clr type fallback matching. + + + Match when the datatype name or CLR type matches while the other also matches or is absent. + + + Match when the datatype name matches and the clr type also matches or is absent. + + + A factory for well-known PgConverters. + + + Returns the first default converter or the first converter that matches both type and dataTypeName. + If just a type was passed and no default was found we return the first converter with a type match. + + + Returns whether type matches any of the types we register pg arrays as. + + + + Launches MIT Kerberos klist and parses out the default principal from it. + Caches the result. + + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A component which translates a CLR name (e.g. SomeClass) into a database name (e.g. some_class) + according to some scheme. + Used for mapping enum and composite types. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which preserves CLR names (e.g. SomeClass) when mapping names to the database. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which converts standard CLR names (e.g. SomeClass) to snake-case database + names (some_class) + + + + + Creates a new . + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Creates a new . + + + Uses the legacy naming convention if , otherwise it uses the new naming convention. + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + Converts a string to its snake_case equivalent. + + The value to convert. + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Controls whether to place error barriers between all batch commands within this batch. Default to . + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Enabling error barriers ensures that errors do not affect other commands in the batch. + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message between each command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + To control error barriers on a command-by-command basis, see . + + + + + + Marks all of the batch's result columns as either known or unknown. + Unknown results column are requested them from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Initializes a new . + + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of a object. + + An object. + + + + Returns whether the method is implemented. + + + + + Appends an error barrier after this batch command. Defaults to the value of on the + batch. + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Appending an error barrier ensures that errors from this command (or previous ones) won't cause later commands to be skipped, + and that errors from later commands won't cause this command (or previous ones) to be rolled back). + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message after this command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + Controlling error barriers on a command-by-command basis is an advanced feature, consider enabling error barriers for the entire + batch via . + + + + + + The number of rows affected or retrieved. + + + See the command tag in the CommandComplete message for the meaning of this value for each , + https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + + + + Specifies the type of query, e.g. SELECT. + + + + + For an INSERT, the object ID of the inserted row if is 1 and + the target table has OIDs; otherwise 0. + + + + + The SQL as it will be sent to PostgreSQL, after any rewriting performed by Npgsql (e.g. named to positional parameter + placeholders). + + + + + The list of parameters, ordered positionally, as it will be sent to PostgreSQL. + + + If the user provided positional parameters, this references the (in batching mode) or the list + backing (in non-batching) mode. If the user provided named parameters, this is a + separate list containing the re-ordered parameters. + + + + + The RowDescription message for this query. If null, the query does not return rows (e.g. INSERT) + + + + + If this statement has been automatically prepared, references the . + Null otherwise. + + + + + Holds the server-side (prepared) ASCII statement name. Empty string for non-prepared statements. + + + + + Whether this statement has already been prepared (including automatic preparation). + + + + + Returns a prepared statement for this statement (including automatic preparation). + + + + + Initializes a new . + + + + + Initializes a new . + + The text of the . + + + + Returns the . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides an API for a binary COPY TO operation, a high-performance data export mechanism from + a PostgreSQL table. Initiated by + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be read. + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be read. + The value of the column + + + + Returns whether the current column is null. + + + + + Skips the current column without interpreting its value. + + + + + Skips the current column without interpreting its value. + + + + + Cancels an ongoing export. + + + + + Async cancels an ongoing export. + + + + + Completes that binary export and sets the connection back to idle state + + + + + Async completes that binary export and sets the connection back to idle state + + + + + + Provides an API for a binary COPY FROM operation, a high-performance data import mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The number of columns in the current (not-yet-written) row. + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Writes a single column in the current row. + + The value to be written + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row. + + The value to be written + + An optional token to cancel the asynchronous operation. The default value is . + + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single null column value. + + + + + Writes a single null column value. + + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + An array of column values to be written as a single row + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + + An optional token to cancel the asynchronous operation. The default value is . + + An array of column values to be written as a single row + + + + Completes the import operation. The writer is unusable after this operation. + + + + + Completes the import operation. The writer is unusable after this operation. + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + Represents a SQL statement or function (stored procedure) to execute + against a PostgreSQL database. This class cannot be inherited. + + + + + If this command is (explicitly) prepared, references the connector on which the preparation happened. + Used to detect when the connector was changed (i.e. connection open/close), meaning that the command + is no longer prepared. + + + + + Whether this is wrapped by an . + + + + + Returns details about each statement that this command has executed. + Is only populated when an Execute* method is called. + + + + + Whether this command is cached by and returned by . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the text of the query. + + The text of the query. + + + + Initializes a new instance of the class with the text of the query and a + . + + The text of the query. + A that represents the connection to a PostgreSQL server. + + + + Initializes a new instance of the class with the text of the query, a + , and the . + + The text of the query. + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + Used when this instance is wrapped inside an . + + + + + Used when this instance is wrapped inside an . + + + + + Gets or sets the SQL statement or function (stored procedure) to execute at the data source. + + The SQL statement or function (stored procedure) to execute. The default is an empty string. + + + + Gets or sets the wait time (in seconds) before terminating the attempt to execute a command and generating an error. + + The time (in seconds) to wait for the command to execute. The default value is 30 seconds. + + + + Gets or sets a value indicating how the property is to be interpreted. + + + One of the values. The default is . + + + + + DB connection. + + + + + Gets or sets the used by this instance of the . + + The connection to a data source. The default value is . + + + + Design time visible. + + + + + Gets or sets how command results are applied to the DataRow when used by the + DbDataAdapter.Update(DataSet) method. + + One of the values. + + + + Returns whether this query will execute as a prepared (compiled) query. + + + + + Marks all of the query's result columns as either known or unknown. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Marks the query's result columns as known or unknown, on a column-by-column basis. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + If the query includes several queries (e.g. SELECT 1; SELECT 2), this will only apply to the first + one. The rest of the queries will be fetched and parsed as usual. + + The array size must correspond exactly to the number of result columns the query returns, or an + error will be raised. + + + + + The current state of the command + + + + + Creates a new instance of an object. + + A object. + + + + Creates a new instance of a object. + + An object. + + + + DB parameter collection. + + + + + Gets the . + + The parameters of the SQL statement or function (stored procedure). The default is an empty collection. + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Executes a SQL statement against the connection and returns the number of rows affected. + + The number of rows affected if known; -1 otherwise. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the number of rows affected if known; -1 otherwise. + + + + Executes the query, and returns the first column of the first row + in the result set returned by the query. Extra columns or rows are ignored. + + The first column of the first row in the result set, + or a null reference if the result set is empty. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the first column of the + first row in the result set, or a null reference if the result set is empty. + + + + Executes the command text against the connection. + + A task representing the operation. + + + + Executes the command text against the connection. + + An instance of . + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + A task representing the operation. + + + + An asynchronous version of , which executes + the against the + and returns a . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + An asynchronous version of , + which executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + DB transaction. + + + + + This property is ignored by Npgsql. PostgreSQL only supports a single transaction at a given time on + a given connection, and all commands implicitly run inside the current transaction started via + + + + + + Attempts to cancel the execution of an . + + As per the specs, no exception will be thrown by this method in case of failure. + + + + + + + Fixes up the text/binary flag on result columns. + Since Prepare() describes a statement rather than a portal, the resulting RowDescription + will have text format on all result columns. Fix that up. + + + Note that UnknownResultTypeList only applies to the first query, while AllResultTypesAreUnknown applies + to all of them. + + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + This event is unsupported by Npgsql. Use instead. + + + + + This class creates database commands for automatic insert, update and delete operations. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The adapter. + + + + Gets or sets the beginning character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The beginning character or characters to use. The default is an empty string. + + + + + + + + Gets or sets the ending character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The ending character or characters to use. The default is an empty string. + + + + + + + + + This method is responsible to derive the command parameter list with values obtained from function definition. + It clears the Parameters collection of command. Also, if there is any parameter type which is not supported by Npgsql, an InvalidOperationException will be thrown. + Parameters name will be parameter1, parameter2, ... for CommandType.StoredProcedure and named after the placeholder for CommandType.Text + + NpgsqlCommand whose function parameters will be obtained. + + + + Gets the automatically generated object required + to perform insertions at the data source. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated object required to perform insertions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform updates at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform updates. + + + + + Gets the automatically generated object required to perform updates + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform updates. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform deletions at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform deletions. + + + + + Gets the automatically generated object required to perform deletions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform deletions. + + + + + Applies the parameter information. + + The parameter. + The row. + Type of the statement. + If set to [where clause]. + + + + Returns the name of the specified parameter in the format of @p#. + + The number to be included as part of the parameter's name.. + + The name of the parameter with the specified number appended as part of the parameter name. + + + + + Returns the full parameter name, given the partial parameter name. + + The partial name of the parameter. + + The full parameter name corresponding to the partial parameter name requested. + + + + + Returns the placeholder for the parameter in the associated SQL statement. + + The number to be included as part of the parameter's name. + + The name of the parameter with the specified number appended. + + + + + Registers the to handle the event for a . + + The to be used for the update. + + + + Adds an event handler for the event. + + The sender + A instance containing information about the event. + + + + Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier, including properly escaping any embedded quotes in the identifier. + + The original unquoted identifier. + + The quoted version of the identifier. Embedded quotes within the identifier are properly escaped. + + + + + Unquoted identifier parameter cannot be null + + + + Given a quoted identifier, returns the correct unquoted form of that identifier, including properly un-escaping any embedded quotes in the identifier. + + The identifier that will have its embedded quotes removed. + + The unquoted identifier, with embedded quotes properly un-escaped. + + + + + Quoted identifier parameter cannot be null + + + + This class represents a connection to a PostgreSQL server. + + + + + The connection string, without the password after open (unless Persist Security Info=true) + + + + + The original connection string provided by the user, including the password. + + + + + The physical connection to the database. This is when the connection is closed, + and also when it is open in multiplexing mode and unbound (e.g. not in a transaction). + + + + + The parsed connection string. Set only after the connection is opened. + + + + + Flag used to make sure we never double-close a connection, returning it twice to the pool. + + + + + The global type mapper, which contains defaults used by all new connections. + Modify mappings on this mapper to affect your entire application. + + + + + Connection-level type mapping is no longer supported. See the 7.0 release notes for configuring type mapping on NpgsqlDataSource. + + + + + The default TCP/IP port for PostgreSQL. + + + + + Maximum value for connection timeout. + + + + + Tracks when this connection was bound to a physical connector (e.g. at open-time, when a transaction + was started...). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Opens a database connection with the property settings specified by the . + + + + + This is the asynchronous version of . + + + Do not invoke other methods and properties of the object until the returned Task is complete. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + The connection string that includes the server name, + the database name, and other parameters needed to establish + the initial connection. The default value is an empty string. + + + + + Gets or sets the delegate used to generate a password for new database connections. + + +

+ This delegate is executed when a new database connection is opened that requires a password. +

+

+ The and connection + string properties have precedence over this delegate: it will not be executed if a password is specified, or if the specified or + default Passfile contains a valid entry. +

+

+ Due to connection pooling this delegate is only executed when a new physical connection is opened, not when reusing a connection + that was previously opened from the pool. +

+
+
+ + + Backend server host name. + + + + + Backend server port. + + + + + Gets the time (in seconds) to wait while trying to establish a connection + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a connection to open. The default value is 15 seconds. + + + + Gets the time (in seconds) to wait while trying to execute a command + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a command to complete. The default value is 30 seconds. + + + + Gets the name of the current database or the database to be used after a connection is opened. + + The name of the current database or the name of the database to be + used after a connection is opened. The default value is the empty string. + + + + Gets the string identifying the database server (host and port) + + + The name of the database server (host and port). If the connection uses a Unix-domain socket, + the path to that socket is returned. The default value is the empty string. + + + + + User name. + + + + + Gets the current state of the connection. + + A bitwise combination of the values. The default is Closed. + + + + Gets whether the current state of the connection is Open or Closed + + ConnectionState.Open, ConnectionState.Closed or ConnectionState.Connecting + + + + A cached command handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + Creates and returns a + object associated with the . + + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + A cached batch handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + Creates and returns a object associated with the . + + A object. + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Begins a database transaction. + + A object representing the new transaction. + + Nested transactions are not supported. + Transactions created by this method will have the isolation level. + + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Enlist transaction. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases all resources used by the . + + when called from ; + when being called from the finalizer. + + + + Releases all resources used by the . + + + + + Fires when PostgreSQL notices are received from PostgreSQL. + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + Note that notices are very different from notifications (see the event). + + + + + Fires when PostgreSQL notifications are received from PostgreSQL. + + + PostgreSQL notifications are sent when your connection has registered for notifications on a specific channel via the + LISTEN command. NOTIFY can be used to generate such notifications, allowing for an inter-connection communication channel. + + Note that notifications are very different from notices (see the event). + + + + + Returns whether SSL is being used for the connection. + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Selects the local Secure Sockets Layer (SSL) certificate used for authentication. + + + See + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + + + Cannot be used in conjunction with , and + . + + + See . + + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Reports whether the backend uses the newer integer timestamp representation. + Note that the old floating point representation is not supported. + Meant for use by type plugins (e.g. NodaTime) + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Holds all PostgreSQL parameters received for this connection. Is updated if the values change + (e.g. as a result of a SET command). + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds, passed to . + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value is passed to . + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds. + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value as + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Checks whether the connection is currently bound to a connector, and if so, returns it via + . + + + + + Binds this connection to a physical connector. This happens when opening a non-multiplexing connection, + or when starting a transaction on a multiplexed connection. + + + + + Ends binding scope to the physical connection and returns it to the pool. Only useful with multiplexing on. + + + After this method is called, under no circumstances the physical connection (connector) should ever be used if multiplexing is on. + See #3249. + + + + + Returns the supported collections + + + + + Returns the schema collection specified by the collection name. + + The collection name. + The collection specified. + + + + Returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + The collection specified. + + + + Asynchronously returns the supported collections. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name. + + The collection name. + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Creates a closed connection with the connection string and authentication details of this message. + + + + + Clones this connection, replacing its connection string with the given one. + This allows creating a new connection with the same security information + (password, SSL callbacks) while changing other connection parameters (e.g. + database or pooling) + + + + + This method changes the current database by disconnecting from the actual + database and connecting to the specified. + + The name of the database to use in place of the current database. + + + + DB provider factory. + + + + + Clears the connection pool. All idle physical connections in the pool of the given connection are + immediately closed, and any busy connections which were opened before was called + will be closed when returned to the pool. + + + + + Clear all connection pools. All idle physical connections in all pools are immediately closed, and any busy + connections which were opened before was called will be closed when returned + to their pool. + + + + + Unprepares all prepared statements on this connection. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + This event is unsupported by Npgsql. Use instead. + + + + + The connection is currently not bound to a connector. + + + + + The connection is bound to its connector for the scope of the entire connection + (i.e. non-multiplexed connection). + + + + + The connection is bound to its connector for the scope of a transaction. + + + + + The connection is bound to its connector for the scope of a COPY operation. + + + + + The connection is bound to its connector for the scope of a single reader. + + + + + The connection is bound to its connector for an unspecified, temporary scope; the code that initiated + the binding is also responsible to unbind it. + + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notice information (e.g. message, severity...). + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notification payload. + + + + Represents a method that allows the application to provide a certificate collection to be used for SSL client authentication + + + A to be filled with one or more client + certificates. + + + + + Represents a method that allows the application to provide a password at connection time in code rather than configuration + + Hostname + Port + Database Name + User + A valid password for connecting to the database + + + + Provides a simple way to create and manage the contents of connection strings used by + the class. + + + + + Cached DataSource value to reduce allocations on NpgsqlConnection.DataSource.get + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class. + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class, optionally using ODBC rules for quoting values. + + true to use {} to delimit fields; false to use quotation marks. + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class and sets its . + + + + + GeneratedAction and GeneratedActions exist to be able to produce a streamlined binary footprint for NativeAOT. + An idiomatic approach where each action has its own method would double the binary size of NpgsqlConnectionStringBuilder. + + + + + Gets or sets the value associated with the specified key. + + The key of the item to get or set. + The value associated with the specified key. + + + + Adds an item to the . + + The key-value pair to be added. + + + + Removes the entry with the specified key from the DbConnectionStringBuilder instance. + + The key of the key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Removes the entry from the DbConnectionStringBuilder instance. + + The key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Clears the contents of the instance. + + + + + Determines whether the contains a specific key. + + The key to locate in the . + true if the contains an entry with the specified key; otherwise false. + + + + Determines whether the contains a specific key-value pair. + + The item to locate in the . + true if the contains the entry; otherwise false. + + + + Retrieves a value corresponding to the supplied key from this . + + The key of the item to retrieve. + The value corresponding to the key. + true if keyword was found within the connection string, false otherwise. + + + + The hostname or IP address of the PostgreSQL server to connect to. + + + + + The TCP/IP port of the PostgreSQL server. + + + + + The PostgreSQL database to connect to. + + + + + The username to connect with. + + + + + The password to connect with. + + + + + Path to a PostgreSQL password file (PGPASSFILE), from which the password would be taken. + + + + + The optional application name parameter to be sent to the backend during connection initiation. + + + + + Whether to enlist in an ambient TransactionScope. + + + + + Gets or sets the schema search path. + + + + + Gets or sets the client_encoding parameter. + + + + + Gets or sets the .NET encoding that will be used to encode/decode PostgreSQL string data. + + + + + Gets or sets the PostgreSQL session timezone, in Olson/IANA database format. + + + + + Controls whether SSL is required, disabled or preferred, depending on server support. + + + + + Location of a client certificate to be sent to the server. + + + + + Location of a client key for a client certificate to be sent to the server. + + + + + Password for a key for a client certificate. + + + + + Location of a CA certificate used to validate the server certificate. + + + + + Whether to check the certificate revocation list during authentication. + False by default. + + + + + The Kerberos service name to be used for authentication. + + + + + The Kerberos realm to be used for authentication. + + + + + Gets or sets a Boolean value that indicates if security-sensitive information, such as the password, is not returned as part of the connection if the connection is open or has ever been in an open state. + + + + + When enabled, parameter values are logged when commands are executed. Defaults to false. + + + + + When enabled, PostgreSQL error details are included on and + . These can contain sensitive data. + + + + + Controls whether channel binding is required, disabled or preferred, depending on server support. + + + + + Whether connection pooling should be used. + + + + + The minimum connection pool size. + + + + + The maximum connection pool size. + + + + + The time to wait before closing idle connections in the pool if the count + of all connections exceeds MinPoolSize. + + The time (in seconds) to wait. The default value is 300. + + + + How many seconds the pool waits before attempting to prune idle connections that are beyond + idle lifetime (. + + The interval (in seconds). The default value is 10. + + + + The total maximum lifetime of connections (in seconds). Connections which have exceeded this value will be + destroyed instead of returned from the pool. This is useful in clustered configurations to force load + balancing between a running server and a server just brought online. + + The time (in seconds) to wait, or 0 to to make connections last indefinitely (the default). + + + + The time to wait (in seconds) while trying to establish a connection before terminating the attempt and generating an error. + Defaults to 15 seconds. + + + + + The time to wait (in seconds) while trying to execute a command before terminating the attempt and generating an error. + Defaults to 30 seconds. + + + + + The time to wait (in milliseconds) while trying to read a response for a cancellation request for a timed out or cancelled query, before terminating the attempt and generating an error. + Zero for infinity, -1 to skip the wait. + Defaults to 2000 milliseconds. + + + + + Determines the preferred PostgreSQL target server type. + + + + + Enables balancing between multiple hosts by round-robin. + + + + + Controls for how long the host's cached state will be considered as valid. + + + + + The number of seconds of connection inactivity before Npgsql sends a keepalive query. + Set to 0 (the default) to disable. + + + + + Whether to use TCP keepalive with system defaults if overrides isn't specified. + + + + + The number of seconds of connection inactivity before a TCP keepalive query is sent. + Use of this option is discouraged, use instead if possible. + Set to 0 (the default) to disable. + + + + + The interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received. + Defaults to the value of . must be non-zero as well. + + + + + Determines the size of the internal buffer Npgsql uses when reading. Increasing may improve performance if transferring large values from the database. + + + + + Determines the size of the internal buffer Npgsql uses when writing. Increasing may improve performance if transferring large values to the database. + + + + + Determines the size of socket read buffer. + + + + + Determines the size of socket send buffer. + + + + + The maximum number SQL statements that can be automatically prepared at any given point. + Beyond this number the least-recently-used statement will be recycled. + Zero (the default) disables automatic preparation. + + + + + The minimum number of usages an SQL statement is used before it's automatically prepared. + Defaults to 5. + + + + + If set to true, a pool connection's state won't be reset when it is closed (improves performance). + Do not specify this unless you know what you're doing. + + + + + Load table composite type definitions, and not just free-standing composite types. + + + + + Set the replication mode of the connection + + + This property and its corresponding enum are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Set PostgreSQL configuration parameter default values for the connection. + + + + + Configure the way arrays of value types are returned when requested as object instances. + + + + + Enables multiplexing, which allows more efficient use of connections. + + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A compatibility mode for special PostgreSQL server types. + + + + + Whether to trust the server certificate without validating it. + + + + + The time to wait (in seconds) while trying to execute a an internal command before terminating the attempt and generating an error. + + + + + Determines whether the specified object is equal to the current object. + + + + + Hash function. + + + + + + Gets an containing the keys of the . + + + + + Gets an containing the values in the . + + + + + Copies the elements of the to an Array, starting at a particular Array index. + + + The one-dimensional Array that is the destination of the elements copied from . + The Array must have zero-based indexing. + + + The zero-based index in array at which copying begins. + + + + + Returns an enumerator that iterates through the . + + + + + + + + + Marks on which participate in the connection + string. Optionally holds a set of synonyms for the property. + + + + + Holds a list of synonyms for the property. + + + + + Creates a . + + + + + Creates a . + + + + + An option specified in the connection string that activates special compatibility features. + + + + + No special server compatibility mode is active + + + + + The server is an Amazon Redshift instance. + + + + + The server is doesn't support full type loading from the PostgreSQL catalogs, support the basic set + of types via information hardcoded inside Npgsql. + + + + + Specifies how to manage SSL. + + + + + SSL is disabled. If the server requires SSL, the connection will fail. + + + + + Prefer non-SSL connections if the server allows them, but allow SSL connections. + + + + + Prefer SSL connections if the server allows them, but allow connections without SSL. + + + + + Fail the connection if the server doesn't support SSL. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate with host's name. + + + + + Specifies how to manage channel binding. + + + + + Channel binding is disabled. If the server requires channel binding, the connection will fail. + + + + + Prefer channel binding if the server allows it, but connect without it if not. + + + + + Fail the connection if the server doesn't support channel binding. + + + + + Specifies how the mapping of arrays of + value types + behaves with respect to nullability when they are requested via an API returning an . + + + + + Arrays of value types are always returned as non-nullable arrays (e.g. int[]). + If the PostgreSQL array contains a NULL value, an exception is thrown. This is the default mode. + + + + + Arrays of value types are always returned as nullable arrays (e.g. int?[]). + + + + + The type of array that gets returned is determined at runtime. + Arrays of value types are returned as non-nullable arrays (e.g. int[]) + if the actual instance that gets returned doesn't contain null values + and as nullable arrays (e.g. int?[]) if it does. + + When using this setting, make sure that your code is prepared to the fact + that the actual type of array instances returned from APIs like + may change on a row by row base. + + + + Specifies whether the connection shall be initialized as a physical or + logical replication connection + + + This enum and its corresponding property are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Replication disabled. This is the default + + + + + Physical replication enabled + + + + + Logical replication enabled + + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + This class represents an adapter from many commands: select, update, insert and delete to fill a . + + + + + Row updated event. + + + + + Row updating event. + + + + + Default constructor. + + + + + Constructor. + + + + + + Constructor. + + + + + + + Constructor. + + + + + + + Create row updated event. + + + + + Create row updating event. + + + + + Raise the RowUpdated event. + + + + + + Raise the RowUpdating event. + + + + + + Delete command. + + + + + Select command. + + + + + Update command. + + + + + Insert command. + + + + + Reads a forward-only stream of rows from a data source. + + + + + The behavior of the command with which this reader was executed. + + + + + In multiplexing, this is as the sending is managed in the write multiplexing loop, + and does not need to be awaited by the reader. + + + + + Holds the list of statements being executed by this reader. + + + + + The index of the current query resultset we're processing (within a multiquery) + + + + + Records, for each column, its starting offset and length in the current row. + Used only in non-sequential mode. + + + + + The index of the column that we're on, i.e. that has already been parsed, is + is memory and can be retrieved. Initialized to -1, which means we're on the column + count (which comes before the first column). + + + + + The position in the buffer at which the current data row message ends. + Used only when the row is consumed non-sequentially. + + + + + Determines, if we can consume the row non-sequentially. + Mostly useful for a sequential mode, when the row is already in the buffer. + Should always be true for the non-sequential mode. + + + + + The RowDescription message for the current resultset being processed + + + + + Stores the last converter info resolved by column, to speed up repeated reading. + + + + + Whether the current result set has rows + + + + + Is raised whenever Close() is called. + + + + + Advances the reader to the next record in a result set. + + true if there are more rows; otherwise false. + + The default position of a data reader is before the first record. Therefore, you must call Read to begin accessing data. + + + + + This is the asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Advances the reader to the next result when reading the results of a batch of statements. + + + + + + This is the asynchronous version of NextResult. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Internal implementation of NextResult + + + + + Note that in SchemaOnly mode there are no resultsets, and we read nothing from the backend (all + RowDescriptions have already been processed and are available) + + + + + Gets a value indicating the depth of nesting for the current row. Always returns zero. + + + + + Gets a value indicating whether the data reader is closed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. -1 for SELECT statements; 0 if no rows were affected or the statement failed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. 0 for SELECT statements, if no rows were affected or the statement failed. + + + + + Returns details about each statement that this reader will or has executed. + + + Note that some fields (i.e. rows and oid) are only populated as the reader + traverses the result. + + For commands with multiple queries, this exposes the number of rows affected on + a statement-by-statement basis, unlike + which exposes an aggregation across all statements. + + + + + Gets a value that indicates whether this DbDataReader contains one or more rows. + + + + + Indicates whether the reader is currently positioned on a row, i.e. whether reading a + column is possible. + This property is different from in that will + return true even if attempting to read a column will fail, e.g. before + has been called + + + + + Gets the name of the column, given the zero-based column ordinal. + + The zero-based column ordinal. + The name of the specified column. + + + + Gets the number of columns in the current row. + + + + + Consumes all result sets for this reader, leaving the connector ready for sending and processing further + queries + + + + + Releases the resources used by the . + + + + + Releases the resources used by the . + + + + + Closes the reader, allowing a new command to be executed. + + + + + Closes the reader, allowing a new command to be executed. + + + + + Gets the value of the specified column as a Boolean. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a byte. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single character. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 16-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 32-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 64-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a double-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a globally-unique identifier (GUID). + + The zero-based column ordinal. + The value of the specified column. + + + + Populates an array of objects with the column values of the current row. + + An array of Object into which to copy the attribute columns. + The number of instances of in the array. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a TimeSpan, + + + PostgreSQL's interval type has has a resolution of 1 microsecond and ranges from + -178000000 to 178000000 years, while .NET's TimeSpan has a resolution of 100 nanoseconds + and ranges from roughly -29247 to 29247 years. + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + The zero-based column ordinal. + The value of the specified column. + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + Currently only supported in non-sequential mode. + + The zero-based column ordinal. + A data reader. + + + + Reads a stream of bytes from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of bytes read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Reads a stream of characters from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of characters read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Asynchronously gets the value of the specified column as a type. + + The type of the value to be returned. + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Synchronously gets the value of the specified column as a type. + + Synchronously gets the value of the specified column as a type. + The column to be retrieved. + The column to be retrieved. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The name of the column. + The value of the specified column. + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + The zero-based column ordinal. + true if the specified column is equivalent to ; otherwise false. + + + + An asynchronous version of , which gets a value that indicates whether the column contains non-existent or missing values. + The parameter is currently ignored. + + The zero-based column to be retrieved. + + An optional token to cancel the asynchronous operation. The default value is . + + true if the specified column value is equivalent to otherwise false. + + + + Gets the column ordinal given the name of the column. + + The name of the column. + The zero-based column ordinal. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + The zero-based column index. + + + + Gets the data type information for the specified field. + This is the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + The zero-based column index. + + + + Gets the OID for the PostgreSQL type for the specified field, as it appears in the pg_type table. + + + This is a PostgreSQL-internal value that should not be relied upon and should only be used for + debugging purposes. + + The zero-based column index. + + + + Gets the data type of the specified column. + + The zero-based column ordinal. + The data type of the specified column. + + + + Returns an that can be used to iterate through the rows in the data reader. + + An that can be used to iterate through the rows in the data reader. + + + + Returns schema information for the columns in the current resultset. + + + + + + Asynchronously returns schema information for the columns in the current resultset. + + + + + + Returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Asynchronously returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Seeks to the given column. The 4-byte length is read and returned. + + + + + Checks that we have a RowDescription, but not necessary an actual resultset + (for operations which work in SchemaOnly mode. + + + + + Unbinds reader from the connector. + Should be called before the connector is returned to the pool. + + + + + + + + + + + Contains the connection string returned to the user from + after the connection has been opened. Does not contain the password unless Persist Security Info=true. + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + Semaphore to ensure we don't perform type loading and mapping setup concurrently for this data source. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a command ready for use against this . + + An optional SQL for the command. + + + + Creates a batch ready for use against this . + + + + + Creates a new for the given . + + + + + Creates a new for the given . + + + + + Manually sets the password to be used the next time a physical connection is opened. + Consider using instead. + + + + + + + + + + + + + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + Constructs a new , optionally starting out from the given . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + The exception that is thrown when server-related issues occur. + + + PostgreSQL errors (e.g. query SQL issues, constraint violations) are raised via + which is a subclass of this class. + Purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ArgumentException). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class with a specified error message. + + The message that describes the error. + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error or a timeout). + + + + + If the exception was thrown as a result of executing a , references the within + the batch which triggered the exception. Otherwise . + + + + + Initializes a new instance of the class with serialized data. + + The SerializationInfo that holds the serialized object data about the exception being thrown. + The StreamingContext that contains contextual information about the source or destination. + + + + A factory to create instances of various Npgsql objects. + + + + + Gets an instance of the . + This can be used to retrieve strongly typed data objects. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + A service object of type serviceType, or null if there is no service object of type serviceType. + + + + Large object manager. This class can be used to store very large files in a PostgreSQL database. + + + + + The largest chunk size (in bytes) read and write operations will read/write each roundtrip to the network. Default 4 MB. + + + + + Creates an NpgsqlLargeObjectManager for this connection. The connection must be opened to perform remote operations. + + + + + + Execute a function + + + + + Execute a function that returns a byte array + + + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + The oid for the large object created + If an oid is already in use + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + The oid for the large object created + If an oid is already in use + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Deletes a large object on the backend. + + Oid of the object to delete + + + + Deletes a large object on the backend. + + Oid of the object to delete + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + An interface to remotely control the seekable stream for an opened large object on a PostgreSQL server. + Note that the OpenRead/OpenReadWrite method as well as all operations performed on this stream must be wrapped inside a database transaction. + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + How many bytes actually read, or 0 if end of file was already reached. + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + + An optional token to cancel the asynchronous operation. The default value is . + + How many bytes actually read, or 0 if end of file was already reached. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + CanTimeout always returns false. + + + + + CanRead always returns true, unless the stream has been closed. + + + + + CanWrite returns true if the stream was opened with write permissions, and the stream has not been closed. + + + + + CanSeek always returns true, unless the stream has been closed. + + + + + Returns the current position in the stream. Getting the current position does not need a round-trip to the server, however setting the current position does. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Does nothing. + + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases resources at the backend allocated for this stream. + + + + + Releases resources at the backend allocated for this stream, iff disposing is true. + + Whether to release resources allocated at the backend. + + + + Configures Npgsql logging + + + + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to false. + + + + + + Globally initializes Npgsql logging to use the provided . + Must be called before any Npgsql APIs are used. + + + This is a legacy-only, backwards compatibility API. New applications should set the logger factory on + and use the resulting instead. + + + The logging factory to use when logging from Npgsql. + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to . + + + + + An which manages connections for multiple hosts, is aware of their states (primary, secondary, + offline...) and can perform failover and load balancing across them. + + + See . + + + + + Returns a new, unopened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Returns an that wraps this multi-host one with the given server type. + + Specifies the server type (e.g. primary, standby). + + + + Clears the database state (primary, secondary, offline...) for all data sources managed by this multi-host data source. + Can be useful to make Npgsql retry a PostgreSQL instance which was previously detected to be offline. + + + + + Reads a forward-only stream of rows from a nested data source. + Can be retrieved using or + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + + The zero-based column ordinal. + A data reader. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides information on a PostgreSQL notification. Notifications are sent when your connection has registered for + notifications on a specific channel via the LISTEN command. NOTIFY can be used to generate such notifications, + allowing for an inter-connection communication channel. + + + + + Process ID of the PostgreSQL backend that sent this notification. + + + + + The channel on which the notification was sent. + + + + + An optional payload string that was sent with this notification. + + + + + Thrown when trying to use a connection that is already busy performing some other operation. + Provides information on the already-executing operation to help with debugging. + + + + + Creates a new instance of . + + + A command which was in progress when the operation which triggered this exception was executed. + + + + + If the connection is busy with another command, this will contain a reference to that command. + Otherwise, if the connection if busy with another type of operation (e.g. COPY), contains + . + + + + + This class represents a parameter to a command that will be sent to server + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the parameter name and a value. + + The name of the parameter to map. + The value of the . + +

+ When you specify an in the value parameter, the is + inferred from the CLR type. +

+

+ When using this constructor, you must be aware of a possible misuse of the constructor which takes a + parameter. This happens when calling this constructor passing an int 0 and the compiler thinks you are passing a value of + . Use for example to have compiler calling the correct constructor. +

+
+
+ + + Initializes a new instance of the class with the parameter name and the data type. + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Gets or sets The name of the . + + The name of the . + The default is an empty string. + + + + + + + Gets or sets the value of the parameter. + + + An that is the value of the parameter. + The default value is . + + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Used to specify which PostgreSQL type will be sent to the database for this parameter. + + + + + + + + + + + Gets or sets the maximum number of digits used to represent the property. + + + The maximum number of digits used to represent the property. + The default value is 0, which indicates that the data provider sets the precision for . + + + + Gets or sets the number of decimal places to which is resolved. + + The number of decimal places to which is resolved. The default is 0. + + + + + + + + + + + + + + + + The collection to which this parameter belongs, if any. + + + + + The PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This property is automatically set if parameters have been derived via + and can be used to + acquire additional information about the parameters' data type. + + + + Attempt to resolve a type info based on available (postgres) type information on the parameter. + + + Bind the current value to the type info, truncate (if applicable), take its size, and do any final validation before writing. + + + + + + + Creates a new that is a copy of the current instance. + + A new that is a copy of this instance. + + + + Represents a collection of parameters relevant to a as well as their respective mappings to columns in + a . + + + + + Initializes a new instance of the NpgsqlParameterCollection class. + + + + + Gets the with the specified name. + + The name of the to retrieve. + + The with the specified name, or a reference if the parameter is not found. + + + + + Gets the at the specified index. + + The zero-based index of the to retrieve. + The at the specified index. + + + + Adds the specified object to the . + + The to add to the collection. + The index of the new object. + + + + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name, + data type and value. + + The name of the . + One of the NpgsqlDbType values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The name of the source column. + The parameter that was added. + + + + Adds a to the given the specified value. + + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified data type and value. + + One of the values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the parameter name and the data type. + + The name of the parameter. + One of the values. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, + and the column length. + + The name of the parameter. + One of the values. + The length of the column. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, the + column length, and the source column name. + + The name of the parameter. + One of the values. + The length of the column. + The name of the source column. + The index of the new object. + + + + + + + + + + + + + + + + Removes the specified from the collection using a specific index. + + The zero-based index of the parameter. + + + + + + + Removes the specified from the collection. + + The name of the to remove from the collection. + + + + Removes the specified from the collection. + + The to remove from the collection. + + + + + + + Gets a value indicating whether a with the specified parameter name exists in the collection. + + The name of the object to find. + + A reference to the requested parameter is returned in this out param if it is found in the list. + This value is if the parameter is not found. + + + if the collection contains the parameter and param will contain the parameter; + otherwise, . + + + + + Removes all items from the collection. + + + + + + + + + + + + + + + + + Gets the number of objects in the collection. + + The number of objects in the collection. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Report the offset within the collection of the given parameter. + + Parameter to find. + Index of the parameter, or -1 if the parameter is not present. + + + + Insert the specified parameter into the collection. + + Index of the existing parameter before which to insert the new one. + Parameter to insert. + + + + Report whether the specified parameter is present in the collection. + + Parameter to find. + True if the parameter was found, otherwise false. + + + + Remove the specified parameter from the collection. + + Parameter to remove. + True if the parameter was found and removed, otherwise false. + + + + Convert collection to a System.Array. + + Destination array. + Starting index in destination array. + + + + Convert collection to a System.Array. + + NpgsqlParameter[] + + + + The parameter collection includes no parameters. + + + + + The parameter collection includes only named parameters. + + + + + The parameter collection includes only positional parameters. + + + + + The parameter collection includes both named and positional parameters. + This is only supported when is set to . + + + + + A generic version of which provides more type safety and + avoids boxing of value types. Use instead of . + + The type of the value that will be stored in the parameter. + + + + Gets or sets the strongly-typed value of the parameter. + + + + + Gets or sets the value of the parameter. This delegates to . + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a parameter name and value. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Provides an API for a raw binary COPY operation, a high-performance data import/export mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The copy binary format header signature + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Writer for a text import, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Reader for a text export, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing export. + + + + + Asynchronously cancels and terminates an ongoing export. + + + + + Provides the underlying mechanism for reading schema information. + + + + + Returns the MetaDataCollections that lists all possible collections. + + The MetaDataCollections + + + + Returns the Restrictions that contains the meaning and position of the values in the restrictions array. + + The Restrictions + + + + Populates some generic type information that is common for base types, arrays, enums, etc. Some will + be overridden later. + + + + + Sets some custom, hardcoded info on a DataType row that cannot be loaded/inferred from PostgreSQL + + + + + List of keywords taken from PostgreSQL 9.0 reserved words documentation. + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + On this builder, various features are disabled by default; unless you're looking to save on code size (e.g. when publishing with + NativeAOT), use instead. + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + Constructs a new , optionally starting out from the given + . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + The same builder instance so that multiple calls can be chained. + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + The same builder instance so that multiple calls can be chained. + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sets up mappings for the PostgreSQL array types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL range types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL record type as a .NET object[]. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL tsquery and tsvector types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL ltree extension types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for extra conversions from PostgreSQL to .NET types. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use TLS/SSl encryption for connections to PostgreSQL. This does not guarantee that encryption will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use GSS/SSPI authentication for connections to PostgreSQL. This does not guarantee that it will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + Options to configure Npgsql's support for OpenTelemetry tracing. + Currently no options are available. + + + + + Represents a transaction to be made in a PostgreSQL database. This class cannot be inherited. + + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + If true, the transaction has been committed/rolled back, but not disposed. + + + + + Specifies the isolation level for this transaction. + + The isolation level for this transaction. The default is . + + + + Commits the database transaction. + + + + + Commits the database transaction. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Rolls back a transaction from a pending state. + + + + + Rolls back a transaction from a pending state. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Creates a transaction save point. + + The name of the savepoint. + + This method does not cause a database roundtrip to be made. The savepoint creation statement will instead be sent along with + the next command. + + + + + Creates a transaction save point. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + This method does not cause a database roundtrip to be made, and will therefore always complete synchronously. + The savepoint creation statement will instead be sent along with the next command. + + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Indicates whether this transaction supports database savepoints. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, without rolling back. Used only in special circumstances, e.g. when + the connection is broken. + + + + + Unbinds transaction from the connector. + Should be called before the connector is returned to the pool. + + + + + Represents a .pgpass file, which contains passwords for noninteractive connections + + + + + File name being parsed for credentials + + + + + Initializes a new instance of the class + + + + + + Parses file content and gets all credentials from the file + + corresponding to all lines in the .pgpass file + + + + Searches queries loaded from .PGPASS file to find first entry matching the provided parameters. + + Hostname to query. Use null to match any. + Port to query. Use null to match any. + Database to query. Use null to match any. + User name to query. Use null to match any. + Matching if match was found. Otherwise, returns null. + + + + Represents a hostname, port, database, username, and password combination that has been retrieved from a .pgpass file + + + + + Hostname parsed from the .pgpass file + + + + + Port parsed from the .pgpass file + + + + + Database parsed from the .pgpass file + + + + + User name parsed from the .pgpass file + + + + + Password parsed from the .pgpass file + + + + + This class represents an entry from the .pgpass file + + Hostname parsed from the .pgpass file + Port parsed from the .pgpass file + Database parsed from the .pgpass file + User name parsed from the .pgpass file + Password parsed from the .pgpass file + + + + Creates new based on string in the format hostname:port:database:username:password. The : and \ characters should be escaped with a \. + + string for the entry from the pgpass file + New instance of for the string + Entry is not formatted as hostname:port:database:username:password or non-wildcard port is not a number + + + + Checks whether this matches the parameters supplied + + Hostname to check against this entry + Port to check against this entry + Database to check against this entry + Username to check against this entry + True if the entry is a match. False otherwise. + + + + Checks if 2 strings are a match for a considering that either value can be a wildcard (*) + + Value being searched + Value from the PGPASS entry + True if the values are a match. False otherwise. + + + + Tracks all connectors currently managed by this pool, whether idle or busy. + Only updated rarely - when physical connections are opened/closed - but is read in perf-sensitive contexts. + + + + + Reader side for the idle connector channel. Contains nulls in order to release waiting attempts after + a connector has been physically closed/broken. + + + + + Incremented every time this pool is cleared via or + . Allows us to identify connections which were + created before the clear. + + + + + Provides lookup for a pool based on a connection string. + + + Note that pools created directly as are referenced directly by users, and aren't managed here. + + + + + Resets the pool manager to its initial state, for test purposes only. + Assumes that no other threads are accessing the pool. + + + + + The default implementation of , for standard PostgreSQL databases.. + + + + + + + + The default implementation of NpgsqlDatabase, for standard PostgreSQL databases. + + + + + The PostgreSQL types detected in the database. + + + + + + + + The PostgreSQL version string as returned by the version() function. Populated during loading. + + + + + True if the backend is Amazon Redshift; otherwise, false. + + + + + + + + True if the 'pg_enum' table includes the 'enumsortorder' column; otherwise, false. + + + + + True if the 'pg_type' table includes the 'typcategory' column; otherwise, false. + + + pg_type.typcategory is added after 8.4. + see: https://www.postgresql.org/docs/8.4/static/catalog-pg-type.html#CATALOG-TYPCATEGORY-TABLE + + + + + Loads database information from the PostgreSQL database specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A task representing the asynchronous operation. + + + + + Generates a raw SQL query string to select type information. + + + Select all types (base, array which is also base, enum, range, composite). + Note that arrays are distinguished from primitive types through them having typreceive=array_recv. + Order by primitives first, container later. + For arrays and ranges, join in the element OID and type (to filter out arrays of unhandled + types). + + + + + Loads type information from the backend specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A collection of types loaded from the backend. + + + Unknown typtype for type '{internalName}' in pg_type: {typeChar}. + + + + Provides constants for PostgreSQL error codes. + + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The exception that is thrown when the PostgreSQL backend reports errors (e.g. query + SQL issues, constraint violations). + + + This exception only corresponds to a PostgreSQL-delivered error. + Other errors (e.g. network issues) will be raised via , + and purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ). + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html, + https://www.postgresql.org/docs/current/static/protocol-error-fields.html + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Populates a with the data needed to serialize the target object. + + The to populate with data. + The destination (see ) for this serialization. + + + + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error). Check . + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + Constants are defined in . + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + + https://www.postgresql.org/docs/current/static/protocol-flow.html#PROTOCOL-ASYNC + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Provides data for a PostgreSQL notice event. + + + + + The Notice that was sent from the database. + + + + + Represents a PostgreSQL array data type, which can hold several multiple values in a single column. + + + See https://www.postgresql.org/docs/current/static/arrays.html. + + + + + The PostgreSQL data type of the element contained within this array. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + + + + Represents a PostgreSQL base data type, which is a simple scalar value. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + + + + Represents a PostgreSQL composite data type, which can hold multiple fields of varying types in a single column. + + + See https://www.postgresql.org/docs/current/static/rowtypes.html. + + + + + Holds the name and types for all fields. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a field in a PostgreSQL composite data type. + + + + + The name of the composite field. + + + + + The type of the composite field. + + + + + + + + Represents a PostgreSQL domain type. + + + See https://www.postgresql.org/docs/current/static/sql-createdomain.html. + + When PostgreSQL returns a RowDescription for a domain type, the type OID is the base type's + (so fetching a domain type over text returns a RowDescription for text). + However, when a composite type is returned, the type OID there is that of the domain, + so we provide "clean" support for domain types. + + + + + The PostgreSQL data type of the base type, i.e. the type this domain is based on. + + + + + True if the domain has a NOT NULL constraint, otherwise false. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a PostgreSQL enum data type. + + + See https://www.postgresql.org/docs/current/static/datatype-enum.html. + + + + + The enum's fields. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Represents a PostgreSQL multirange data type. + + +

See https://www.postgresql.org/docs/current/static/rangetypes.html.

+

Multirange types were introduced in PostgreSQL 14.

+
+
+ + + The PostgreSQL data type of the range of this multirange. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Represents a PostgreSQL range data type. + + + See https://www.postgresql.org/docs/current/static/rangetypes.html. + + + + + The PostgreSQL data type of the subtype of this range. + + + + + The PostgreSQL data type of the multirange of this range. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Represents a PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This class is abstract, see derived classes for concrete types of PostgreSQL types. + + + Instances of this class are shared between connections to the same databases. + For more info about what this class and its subclasses represent, see + https://www.postgresql.org/docs/current/static/catalog-pg-type.html. + + + + + Constructs a representation of a PostgreSQL data type. + + The data type's namespace (or schema). + The data type's name. + The data type's OID. + + + + Constructs a representation of a PostgreSQL data type. + + The data type's fully qualified name. + The data type's OID. + + + + The data type's OID - a unique id identifying the data type in a given database (in pg_type). + + + + + The data type's namespace (or schema). + + + + + The data type's name. + + + Note that this is the standard, user-displayable type name (e.g. integer[]) rather than the internal + PostgreSQL name as it is in pg_type (_int4). See for the latter. + + + + + The full name of the backend type, including its namespace. + + + + + A display name for this backend type, including the namespace unless it is pg_catalog (the namespace + for all built-in types). + + + + + The data type's internal PostgreSQL name (e.g. _int4 not integer[]). + See for a more user-friendly name. + + + + + If a PostgreSQL array type exists for this type, it will be referenced here. + Otherwise null. + + + + + If a PostgreSQL range type exists for this type, it will be referenced here. + Otherwise null. + + + + + Generates the type name including any facts (size, precision, scale), given the PostgreSQL type modifier. + + + + + Returns a string that represents the current object. + + + + Canonizes (nested) domain types to underlying types, does not handle composites. + + + A base type. + + + An enum carrying its variants. + + + A pseudo type like anyarray. + + + + Represents a PostgreSQL data type that isn't known to Npgsql and cannot be handled. + + + + + Constructs a the unknown backend type. + + + + + Internally represents a statement has been prepared, is in the process of being prepared, or is a + candidate for preparation (i.e. awaiting further usages). + + + + + If true, the user explicitly requested this statement be prepared. It does not get closed as part of + the automatic preparation LRU mechanism. + + + + + If this statement is about to be prepared, but replaces a previous statement which needs to be closed, + this holds the name of the previous statement. Otherwise null. + + + + + Contains the handler types for a prepared statement's parameters, for overloaded cases (same SQL, different param types) + Only populated after the statement has been prepared (i.e. null for candidates). + + + + + The state of a . + + + + + The statement hasn't been prepared yet, nor is it in the process of being prepared. + This is the value for autoprepare candidates which haven't been prepared yet, and is also + a temporary state during preparation. + + + + + The statement is in the process of being prepared. + + + + + The statement has been fully prepared and can be executed. + + + + + The statement is in the process of being unprepared. This is a temporary state that only occurs during + unprepare. Specifically, it means that a Close message for the statement has already been written + to the write buffer. + + + + + The statement has been unprepared and is no longer usable. + + + + + The statement was invalidated because e.g. table schema has changed since preparation. + + + + + Total number of current prepared statements (whether explicit or automatic). + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + Creates a new replication slot and returns information about the newly-created slot. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + The name of the output plugin used for logical decoding (see + + https://www.postgresql.org/docs/current/logicaldecoding-output-plugin.html). + + if this replication slot shall be temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + A to specify what to do with the + snapshot created during logical slot initialization. , which is + also the default, will export the snapshot for use in other sessions. This option can't be used inside a + transaction. will use the snapshot for the current transaction + executing the command. This option must be used in a transaction, and + must be the first command run in that transaction. Finally, will + just use the snapshot for logical decoding as normal but won't do anything else with it. + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a class that + can be used to initialize instances of subclasses. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + or at the slot's consistent point if isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + The collection of options passed to the slot's logical decoding plugin. + + Whether the plugin will be bypassing and reading directly from the buffer. + + A representing an that + can be used to stream WAL entries in form of instances. + + + + Contains information about a newly-created logical replication slot. + + + + + Creates a new logical replication slot + + The logical decoding output plugin to the corresponding replication slot was created for. + A struct with information to create the replication slot. + + + + The identifier of the snapshot exported by the command. + The snapshot is valid until a new command is executed on this connection or the replication connection is closed. + + + + + The name of the output plugin used by the newly-created logical replication slot. + + + + + The WAL location at which the slot became consistent. + This is the earliest location from which streaming can start on this replication slot. + + + + + Represents a logical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Decides what to do with the snapshot created during logical slot initialization. + + + + + Export the snapshot for use in other sessions. This is the default. + This option can't be used inside a transaction. + + + + + Use the snapshot for the current transaction executing the command. + This option must be used in a transaction, and CREATE_REPLICATION_SLOT must be the first command run + in that transaction. + + + + + Just use the snapshot for logical decoding as normal but don't do anything else with it. + + + + + Logical Replication Protocol begin message + + + + + The final LSN of the transaction. + + + + + Commit timestamp of the transaction. + The value is in number of microseconds since PostgreSQL epoch (2000-01-01). + + + + + Logical Replication Protocol begin prepare message + + + + + Logical Replication Protocol commit message + + + + + Flags; currently unused. + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit. + + + + + No flags. + + + + + Logical Replication Protocol commit prepared message + + + + + Flags for the commit prepared; currently unused. + + + + + The LSN of the commit prepared. + + + + + The end LSN of the commit prepared transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to DEFAULT. + + + + + Columns representing the new row. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY REPLICA IDENTITY set to FULL. + + + + + Columns representing the deleted row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to FULL. + + + + + Columns representing the old row. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to USING INDEX. + + + + + Columns representing the key. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol insert message + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY set to DEFAULT or USING INDEX. + + + + + Columns representing the key. + + + + + Logical Replication Protocol logical decoding message + + + + + Flags; Either 0 for no flags or 1 if the logical decoding message is transactional. + + + + + The LSN of the logical decoding message. + + + + + The prefix of the logical decoding message. + + + + + The content of the logical decoding message. + + + + + Logical Replication Protocol origin message + + + + + The LSN of the commit on the origin server. + + + + + Name of the origin. + + + + + The base class of all Logical Replication Protocol Messages + + + See https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html for details about the + protocol. + + + + + + + + Abstract base class for Logical Replication Protocol prepare and begin prepare message + + + + + The user defined GID of the two-phase transaction. + + + + + Logical Replication Protocol prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Abstract base class for the logical replication protocol begin prepare and prepare message + + + + + The LSN of the prepare. + + + + + The end LSN of the prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Logical Replication Protocol relation message + + + + + ID of the relation. + + + + + Namespace (empty string for pg_catalog). + + + + + Relation name. + + + + + Replica identity setting for the relation (same as relreplident in pg_class): + columns used to form “replica identity” for rows. + + + + + Relation columns + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Flags for the column. + + + + + No flags. + + + + + Marks the column as part of the key. + + + + + Replica identity setting for the relation (same as relreplident in pg_class). + + + See + + + + + Default (primary key, if any). + + + + + Nothing. + + + + + All columns. + + + + + Index with indisreplident set (same as nothing if the index used has been dropped) + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. Currently can be either 0 for no flags or 1 which marks the column as part of the key. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Logical Replication Protocol rollback prepared message + + + + + Flags for the rollback prepared; currently unused. + + + + + The end LSN of the prepared transaction. + + + + + The end LSN of the rollback prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Rollback timestamp of the transaction. + + + + + Flags for the rollback prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream abort message + + + + + Xid of the subtransaction (will be same as xid of the transaction for top-level transactions). + + + + + Logical Replication Protocol stream commit message + + + + + Flags; currently unused (must be 0). + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Logical Replication Protocol stream prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream start message + + + + + A value of 1 indicates this is the first stream segment for this XID, 0 for any other stream segment. + + + + + Logical Replication Protocol stream stop message + + + + + The common base class for all streaming replication messages that can be part of a streaming transaction (protocol V2) + + + + + Xid of the transaction (only present for streamed transactions). + + + + + The common base class for all replication messages that set the transaction xid of a transaction + + + + + Xid of the transaction. + + + + + Logical Replication Protocol truncate message + + + + + Option flags for TRUNCATE + + + + + The relations being truncated. + + + + + Enum representing the additional options for the TRUNCATE command as flags + + + + + No additional option was specified + + + + + CASCADE was specified + + + + + RESTART IDENTITY was specified + + + + + Logical Replication Protocol type message + + + + + ID of the data type. + + + + + Namespace (empty string for pg_catalog). + + + + + Name of the data type. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Options to be passed to the pgoutput plugin + + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + The version of the Logical Streaming Replication Protocol + + + + + The publication names to stream + + + + + Send values in binary representation + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of in-progress transactions + + + This works as of logical streaming replication protocol version 2 (PostgreSQL 14+) + + + + + Write logical decoding messages into the replication stream + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of prepared transactions + + + This works in PostgreSQL versions 15+ + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot initialized for for the logical streaming replication protocol + (pgoutput logical decoding plugin). + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The representing the existing replication slot + + + + Creates a new instance. + + + This constructor is intended to be consumed by plugins sitting on top of + + + The from which the new instance should be initialized + + + + Represents a streaming tuple containing . + + + + + The number of columns in the tuple. + + + + + + + + Represents a column value in a logical replication session. + + + + + The length of the value in bytes. + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + true if the specified column is equivalent to ; otherwise false. + + + + Gets a value that indicates whether the column contains an unchanged TOASTed value (the actual value is not sent). + + Whether the specified column is an unchanged TOASTed value. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + + + + Gets the data type information for the specified field. + This is be the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + + + + Gets the data type of the specified column. + + The data type of the specified column. + + + + Gets the value of the specified column as a type. + + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Gets the value of the specified column as an instance of . + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Retrieves data as a . + + + + + Retrieves data as a . + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Identifies the data as NULL value. + + + + + Identifies unchanged TOASTed value (the actual value is not sent). + + + + + Identifies the data as text formatted value. + + + + + Identifies the data as binary value. + + Added in PG14 + + + + Extension methods to use with the pg_output logical decoding plugin. + + + + + Creates a class that wraps a replication slot using the + "pgoutput" logical decoding plugin and can be used to start streaming replication via the logical + streaming replication protocol. + + + See https://www.postgresql.org/docs/current/protocol-logical-replication.html + and https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html + for more information. + + The to use for creating the replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start the Logical Streaming Replication Protocol (pgoutput logical decoding plugin), + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The collection of options passed to the slot's logical decoding plugin. + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a physical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Creates a that wraps a PostgreSQL physical replication slot and + can be used to start physical streaming replication + + + The name of the slot to create. Must be a valid replication slot name + (see Section 26.2.6.1). + + + if this replication slot shall be a temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + + + If this is set to this physical replication slot reserves WAL immediately. Otherwise, + WAL is only reserved upon connection from a streaming replication client. + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a that represents the + newly-created replication slot. + + + + + Read some information associated to a replication slot. + + This command is currently only supported for physical replication slots. + + + + The name of the slot to read. Must be a valid replication slot name + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a or + if the replication slot does not exist. + + + + Instructs the server to start streaming the WAL for physical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for physical replication, starting at the WAL location + and timeline id specified in . The server can reply with an error, for example + if the requested section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The must contain a valid to be used for this overload. + + + The token to be used for stopping the replication. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Wraps a replication slot that uses physical replication. + + + + + Creates a new instance. + + + Create a instance with this constructor to wrap an existing PostgreSQL replication slot + that has been initialized for physical replication. + + The name of the existing replication slot + The replication slot's restart_lsn + The timeline ID associated to restart_lsn, following the current timeline history. + + + + The replication slot's restart_lsn. + + + + + The timeline ID associated to restart_lsn, following the current timeline history. + + + + + Defines the core behavior of replication connections and provides the base class for + and + . + + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + + The connection string that includes the server name, the database name, and other parameters needed to establish the initial + connection. The default value is an empty string. + + + Since replication connections are a special kind of connection, + , , + and + are always disabled no matter what you set them to in your connection string. + + + + + The location of the last WAL byte + 1 received in the standby. + + + + + The location of the last WAL byte + 1 flushed to disk in the standby. + + + + + The location of the last WAL byte + 1 applied (e. g. written to disk) in the standby. + + + + + Send replies at least this often. + Timeout. disables automated replies. + + + + + Time that receiver waits for communication from master. + Timeout. disables the timeout. + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Gets or sets the wait time before terminating the attempt to execute a command and generating an error. + + The time to wait for the command to execute. The default value is 30 seconds. + + + + The client encoding for the connection + This can only be called when there is an active connection. + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Opens a database replication connection with the property settings specified by the + . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous open operation. + + + + Closes the replication connection and performs tasks associated + with freeing, releasing, or resetting its unmanaged resources asynchronously. + + A task that represents the asynchronous dispose operation. + + + + Requests the server to identify itself. + + + An optional token to cancel the asynchronous operation. The default value is . + + + A containing information about the system we are connected to. + + + + + Requests the server to send the current setting of a run-time parameter. + This is similar to the SQL command SHOW. + + The name of a run-time parameter. + Available parameters are documented in https://www.postgresql.org/docs/current/runtime-config.html. + + + An optional token to cancel the asynchronous operation. The default value is . + + The current setting of the run-time parameter specified in as . + + + + Requests the server to send over the timeline history file for timeline tli. + + The timeline for which the history file should be sent. + + An optional token to cancel the asynchronous operation. The default value is . + + The timeline history file for timeline tli + + + + Sets the current status of the replication as it is interpreted by the consuming client. The value supplied + in will be sent to the server via and + with the next status update. + + A status update which will happen upon server request, upon expiration of + our upon an enforced status update via , whichever happens first. + If you want the value you set here to be pushed to the server immediately (e. g. in synchronous replication scenarios), + call after calling this method. + + + + This is a convenience method setting both and in one operation. + You can use it if your application processes replication messages in a way that doesn't care about the difference between + writing a message and flushing it to a permanent storage medium. + + The location of the last WAL byte + 1 applied (e. g. processed or written to disk) and flushed to disk in the standby. + + + + Sends a forced status update to PostgreSQL with the current WAL tracking information. + + The connection currently isn't streaming + A Task representing the sending of the status update (and not any PostgreSQL response). + + + + Drops a replication slot, freeing any reserved server-side resources. + If the slot is a logical slot that was created in a database other than + the database the walsender is connected to, this command fails. + + The name of the slot to drop. + + causes the command to wait until the slot becomes + inactive if it currently is active instead of the default behavior of raising an error. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous drop operation. + + + + The common base class for all streaming replication messages + + + + + The starting point of the WAL data in this message. + + + + + The current end of WAL on the server. + + + + + The server's system clock at the time this message was transmitted, as microseconds since midnight on 2000-01-01. + + + Since the client using Npgsql and the server may be located in different time zones, + as of Npgsql 7.0 this value is no longer converted to local time but keeps its original value in UTC. + You can check if you don't want to introduce behavior depending on Npgsql versions. + + + + + Contains information about a newly-created replication slot. + + + + + The name of the newly-created replication slot. + + + + + Contains information about a replication slot. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + The name of the replication slot. + + + + + The WAL location at which the slot became consistent. + + + + + The identifier of the snapshot exported by the CREATE_REPLICATION_SLOT command. + + + + + Contains server identification information returned from . + + + + + The unique system identifier identifying the cluster. + This can be used to check that the base backup used to initialize the standby came from the same cluster. + + + + + Current timeline ID. Also useful to check that the standby is consistent with the master. + + + + + Current WAL flush location. Useful to get a known location in the write-ahead log where streaming can start. + + + + + Database connected to. + + + + + Text representations of PostgreSQL WAL operations decoded by the "test_decoding" plugin. See + https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Decoded text representation of the operation performed in this WAL entry + + + + + + + + Returns a clone of this message, which can be accessed after other replication messages have been retrieved. + + + + + Options to be passed to the test_decoding plugin + + + + + Creates a new instance of . + + Include the transaction number for BEGIN and COMMIT command output + Include the timestamp for COMMIT command output + Set the output mode to binary + Skip output for transactions that didn't change the database + Only output data that don't have the replication origin set + Include output from table rewrites that were caused by DDL statements + Enable streaming output + + + + Include the transaction number for BEGIN and COMMIT command output + + + + + Include the timestamp for COMMIT command output + + + + + Set the output mode to binary + + + + + Skip output for transactions that didn't change the database + + + + + Only output data that don't have the replication origin set + + + + + Include output from table rewrites that were caused by DDL statements + + + + + Enable streaming output + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot + initialized for for the test_decoding logical decoding plugin. + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The representing the existing replication slot + + + + Extension methods to use with the + test_decoding logical decoding plugin. + See https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Creates a class that wraps a replication slot using the + test_decoding logical decoding plugin. + + + See https://www.postgresql.org/docs/current/test-decoding.html + for more information. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start streaming the WAL for logical replication using the test_decoding logical decoding plugin, + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The collection of options passed to the slot's logical decoding plugin. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a PostgreSQL timeline history file + + + + + File name of the timeline history file, e.g., 00000002.history. + + + + + Contents of the timeline history file. + + + + + A message representing a section of the WAL data stream. + + + + + A section of the WAL data stream that is raw WAL data in physical replication or decoded with the selected + logical decoding plugin in logical replication. It is only valid until the next + is requested from the stream. + + + A single WAL record is never split across two XLogData messages. + When a WAL record crosses a WAL page boundary, and is therefore already split using continuation records, + it can be split at the page boundary. In other words, the first main WAL record and its continuation + records can be sent in different XLogData messages. + + + + + Stripped-down version of , mainly to support Amazon Redshift. + + + + + Performs some post-setup configuration that's common to both table columns and non-columns. + + + + + Provides schema information about a column. + + + Note that this can correspond to a field returned in a query which isn't an actual table column + + See https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldatareader.getschematable(v=vs.110).aspx + for information on the meaning of the different fields. + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The describing the type of this column. + + + + + The OID of the type of this column in the PostgreSQL pg_type catalog table. + + + + + The OID of the PostgreSQL table of this column. + + + + + The column's position within its table. Note that this is different from , + which is the column's position within the resultset. + + + + + The default SQL expression for this column. + + + + + The value for this column's type. + + + + + + + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + + Specifies server type preference. + + + + + Any successful connection is acceptable. + + + + + Session must accept read-write transactions by default (that is, the server must not be in hot standby mode and the + default_transaction_read_only parameter must be off). + + + + + Session must not accept read-write transactions by default (the converse). + + + + + Server must not be in hot standby mode. + + + + + Server must be in hot standby mode. + + + + + First try to find a primary server, but if none of the listed hosts is a primary server, try again in mode. + + + + + First try to find a standby server, but if none of the listed hosts is a standby server, try again in mode. + + + + + Utility class to execute a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it and at the same time prevent event if the original fails later. + + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The result . + The representing the asynchronous wait. + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The representing the asynchronous wait. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A type mapper, managing how to read and write CLR values to PostgreSQL data types. + + + The preferred way to manage type mappings is on . An alternative, but discouraged, method, is to + manage them globally via ). + + + + + The default name translator to convert CLR type names and member names. Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET enum type to be mapped + + + + Removes an existing enum mapping. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing enum mapping. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR type to a PostgreSQL composite type. + + + CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your members to manually specify a PostgreSQL name. + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET type to be mapped + + + + Removes an existing composite mapping. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to + + + + + Maps a CLR type to a composite type. + + + Maps CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + The .NET type to be mapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing composite mapping. + + The .NET type to be unmapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Adds a type info resolver factory which can add or modify support for PostgreSQL types. + Typically used by plugins. + + The type resolver factory to be added. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Resets all mapping changes performed on this type mapper and reverts it to its original, starting state. + + + + + The base class for user type mappings. + + + + + The name of the PostgreSQL type that this mapping is for. + + + + + The CLR type that this mapping is for. + + + + + Represents a timeout that will expire at some point. + + + + + A wrapper around to simplify reset management. + + + Since there's no way to reset a once it was cancelled, + we need to make sure that an existing cancellation token source hasn't been cancelled, + every time we start it (see https://github.com/dotnet/runtime/issues/4694). + + + + + Used, so we wouldn't concurently use the cts for the cancellation, while it's being disposed + + + + + Set the timeout on the wrapped + and make sure that it hasn't been cancelled yet + + + An optional token to cancel the asynchronous operation. The default value is . + + The from the wrapped + + + + Restart the timeout on the wrapped without reinitializing it, + even if is already set to + + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + The from the wrapped + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + + + + Set the timeout on the wrapped + to + + + can still arrive at a state + where it's value is if the + passed to gets a cancellation request. + If this is the case it will be resolved upon the next call to + or . Calling multiple times or without calling + first will do no any harm (besides eating a tiny amount of CPU cycles). + + + + + Cancel the wrapped + + + + + Cancel the wrapped after delay + + + + + The from the wrapped + . + + + The token is only valid after calling + and before calling the next time. + Otherwise you may end up with a token that has already been + cancelled or belongs to a cancellation token source that has + been disposed. + + + + + Allocation free helper function to find if version is greater than expected + + + + + + + + Note that a connection may be closed before its TransactionScope completes. In this case we close the NpgsqlConnection + as usual but the connector in a special list in the pool; it will be closed only when the scope completes. + + + + + Represents a PostgreSQL data type that can be written or read to the database. + Used in places such as to unambiguously specify + how to encode or decode values. + + + See https://www.postgresql.org/docs/current/static/datatype.html. + + + + + Corresponds to the PostgreSQL 8-byte "bigint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 8-byte floating-point "double" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 4-byte "integer" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL arbitrary-precision "numeric" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL floating-point "real" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 2-byte "smallint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL "money" type. + + See https://www.postgresql.org/docs/current/static/datatype-money.html + + + + Corresponds to the PostgreSQL "boolean" type. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL geometric "box" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "circle" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "line" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "lseg" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "path" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "point" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "polygon" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL "char(n)" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "text" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "varchar" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL internal "name" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "citext" type for the citext module. + + See https://www.postgresql.org/docs/current/static/citext.html + + + + Corresponds to the PostgreSQL "char" type. + + + This is an internal field and should normally not be used for regular applications. + + See https://www.postgresql.org/docs/current/static/datatype-text.html + + + + + Corresponds to the PostgreSQL "bytea" type, holding a raw byte string. + + See https://www.postgresql.org/docs/current/static/datatype-binary.html + + + + Corresponds to the PostgreSQL "date" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "interval" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the obsolete PostgreSQL "abstime" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "inet" type. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "cidr" type, a field storing an IPv4 or IPv6 network. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr" type, a field storing a 6-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr8" type, a field storing a 6-byte or 8-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "bit" type. + + See https://www.postgresql.org/docs/current/static/datatype-bit.html + + + + Corresponds to the PostgreSQL "varbit" type, a field storing a variable-length string of bits. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL "tsvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "tsquery" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "regconfig" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "uuid" type. + + See https://www.postgresql.org/docs/current/static/datatype-uuid.html + + + + Corresponds to the PostgreSQL "xml" type. + + See https://www.postgresql.org/docs/current/static/datatype-xml.html + + + + Corresponds to the PostgreSQL "json" type, a field storing JSON in text format. + + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonb" type, a field storing JSON in an optimized binary. + format. + + + Supported since PostgreSQL 9.4. + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonpath" type, a field storing JSON path in text format. + format. + + + Supported since PostgreSQL 12. + See https://www.postgresql.org/docs/current/datatype-json.html#DATATYPE-JSONPATH + + + + + Corresponds to the PostgreSQL "hstore" type, a dictionary of string key-value pairs. + + See https://www.postgresql.org/docs/current/static/hstore.html + + + + Corresponds to the PostgreSQL "refcursor" type. + + + + + Corresponds to the PostgreSQL internal "oidvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL internal "int2vector" type. + + + + + Corresponds to the PostgreSQL "oid" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid8" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "cid" type, an internal command identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "regtype" type, a numeric (OID) ID of a type in the pg_type table. + + + + + Corresponds to the PostgreSQL "tid" type, a tuple id identifying the physical location of a row within its table. + + + + + Corresponds to the PostgreSQL "pg_lsn" type, which can be used to store LSN (Log Sequence Number) data which + is a pointer to a location in the WAL. + + + See: https://www.postgresql.org/docs/current/datatype-pg-lsn.html and + https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=7d03a83f4d0736ba869fa6f93973f7623a27038a + + + + + A special value that can be used to send parameter values to the database without + specifying their type, allowing the database to cast them to another value based on context. + The value will be converted to a string and send as text. + + + This value shouldn't ordinarily be used, and makes sense only when sending a data type + unsupported by Npgsql. + + + + + The geometry type for PostgreSQL spatial extension PostGIS. + + + + + The geography (geodetic) type for PostgreSQL spatial extension PostGIS. + + + + + The PostgreSQL ltree type, each value is a label path "a.label.tree.value", forming a tree in a set. + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL lquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL ltxtquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + Corresponds to the PostgreSQL "int4range" type. + + + + + Corresponds to the PostgreSQL "int8range" type. + + + + + Corresponds to the PostgreSQL "numrange" type. + + + + + Corresponds to the PostgreSQL "tsrange" type. + + + + + Corresponds to the PostgreSQL "tstzrange" type. + + + + + Corresponds to the PostgreSQL "daterange" type. + + + + + Corresponds to the PostgreSQL "int4multirange" type. + + + + + Corresponds to the PostgreSQL "int8multirange" type. + + + + + Corresponds to the PostgreSQL "nummultirange" type. + + + + + Corresponds to the PostgreSQL "tsmultirange" type. + + + + + Corresponds to the PostgreSQL "tstzmultirange" type. + + + + + Corresponds to the PostgreSQL "datemultirange" type. + + + + + Corresponds to the PostgreSQL "array" type, a variable-length multidimensional array of + another type. This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Array | NpgsqlDbType.Integer) + + See https://www.postgresql.org/docs/current/static/arrays.html + + + + Corresponds to the PostgreSQL "range" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Range | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 9.2. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Corresponds to the PostgreSQL "multirange" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Multirange | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 14. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + Can return null when a custom range type is used. + + + Can return null when a plugin type or custom range type is used. + + + Should not be used with display names, first normalize it instead. + + + + A raw representation of the PostgreSQL interval datatype. Use only when or NodaTime + Period do not have sufficient range to handle your values. + + +

+ See https://www.postgresql.org/docs/current/static/datatype-geometric.html. +

+

+ Do not use this type unless you have to: prefer or NodaTime + Period when possible. +

+
+
+ + + Constructs an . + + + + + Months and years, after time for alignment. + + + + + Days, after time for alignment. + + + + + Remaining time unit smaller than a day, in microseconds. + + + + + + + + + + + + + + Wraps a PostgreSQL Write-Ahead Log Sequence Number (see: https://www.postgresql.org/docs/current/datatype-pg-lsn.html) + + + Log Sequence Numbers are a fundamental concept of the PostgreSQL Write-Ahead Log and by that of + PostgreSQL replication. See https://www.postgresql.org/docs/current/wal-internals.html for what they represent. + + This struct provides conversions from/to and and beyond that tries to port + the methods and operators in https://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/utils/adt/pg_lsn.c + but nothing more. + + + + + Zero is used indicate an invalid Log Sequence Number. No XLOG record can begin at zero. + + + + + Initializes a new instance of . + + The value to wrap. + + + + Returns a value indicating whether this instance is equal to a specified + instance. + + A instance to compare to this instance. + if the current instance is equal to the value parameter; + otherwise, . + + + + Compares this instance to a specified and returns an indication of their + relative values. + + A instance to compare to this instance. + A signed number indicating the relative values of this instance and . + + + + Returns a value indicating whether this instance is equal to a specified object. + + An object to compare to this instance + if the current instance is equal to the value parameter; + otherwise, . + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Converts the numeric value of this instance to its equivalent string representation. + + The string representation of the value of this instance, consisting of two hexadecimal numbers of + up to 8 digits each, separated by a slash + + + + Converts the string representation of a Log Sequence Number to a instance. + + A string that represents the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + The parameter is . + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Converts the span representation of a Log Sequence Number to a instance. + + A span containing the characters that represent the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Tries to convert the string representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A string that represents the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is or , is not in the right format, or represents a number + less than or greater than . This parameter is + passed uninitialized; any value originally supplied in result will be overwritten. + + + if c> was converted successfully; otherwise, . + + + + + Tries to convert the span representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A span containing the characters that represent the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is empty, is not in the right format, or represents a number less than + or greater than . This parameter is passed + uninitialized; any value originally supplied in result will be overwritten. + + + if was converted successfully; otherwise, . + + + + Converts the value of a 64-bit unsigned integer to a instance. + + A 64-bit unsigned integer. + A new instance of initialized to . + + + + Converts the value of a instance to a 64-bit unsigned integer value. + + A instance + The contents of as 64-bit unsigned integer. + + + + Returns a value that indicates whether two specified instances of are equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if equals ; otherwise, . + + + + + Returns a value that indicates whether two specified instances of are not + equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if does not equal ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than + another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is less than + another specified instance. + + The first value to compare. + The second value to compare. + + if is less than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than or equal to ; + otherwise, . + + + + + Returns the larger of two values. + + The first value to compare. + The second value to compare. + + The larger of the two values. + + + + + Returns the smaller of two values. + + The first value to compare. + The second value to compare. + + The smaller of the two values. + + + + + Returns a value indicating whether a specified instance is less than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is less than or equal to ; + otherwise, . + + + + + Subtracts two specified values. + + The first value. + The second value. + The number of bytes separating those write-ahead log locations. + + + + Subtract the number of bytes from a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to subtract. + A new instance. + + The resulting instance would represent a number less than + . + + + + + Add the number of bytes to a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to add. + A new instance. + + The resulting instance would represent a number greater than + . + + + + + Represents a PostgreSQL range type. + + The element type of the values in the range. + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Defined by PostgreSQL to represent an empty range. + + + + + Defined by PostgreSQL to represent an infinite lower bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an infinite upper bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an null bound. + Some element types may have specific handling for this value distinct from an infinite or missing value. + + + + + Defined by PostgreSQL to represent a lower inclusive bound. + + + + + Defined by PostgreSQL to represent a lower exclusive bound. + + + + + Defined by PostgreSQL to represent an upper inclusive bound. + + + + + Defined by PostgreSQL to represent an upper exclusive bound. + + + + + Defined by PostgreSQL to separate the values for the upper and lower bounds. + + + + + The used by to convert bounds into . + + + + + True if implements ; otherwise, false. + + + + + Represents the empty range. This field is read-only. + + + + + The lower bound of the range. Only valid when is false. + + + + + The upper bound of the range. Only valid when is false. + + + + + The characteristics of the boundaries. + + + + + True if the lower bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the range is empty; otherwise, false. + + + + + Constructs an with inclusive and definite bounds. + + The lower bound of the range. + The upper bound of the range. + + + + Constructs an with definite bounds. + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + + + Attempts to determine if the range is malformed or implicitly empty. + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + True if the range is implicitly empty; otherwise, false. + + + + + Evaluates the boundary flags. + + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + The boundary characteristics. + + + + + Indicates whether the on the left is equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is equal to the on the right; otherwise, false. + + + + + Indicates whether the on the left is not equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is not equal to the on the right; otherwise, false. + + + + + + + + + + + + + + + + + Parses the well-known text representation of a PostgreSQL range type into a . + + A PosgreSQL range type in a well-known text format. + + The represented by the . + + + Malformed range literal. + + + Malformed range literal. Missing left parenthesis or bracket. + + + Malformed range literal. Missing right parenthesis or bracket. + + + Malformed range literal. Missing comma after lower bound. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Represents a type converter for . + + + + + Adds a to the closed form . + + + + + + + + + + + + + + + + + Represents characteristics of range type boundaries. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + The default flag. The range is not empty and has boundaries that are definite and exclusive. + + + + + The range is empty. E.g. '(0,0)', 'empty'. + + + + + The lower bound is inclusive. E.g. '[0,5]', '[0,5)', '[0,)'. + + + + + The upper bound is inclusive. E.g. '[0,5]', '(0,5]', '(,5]'. + + + + + The lower bound is infinite or indefinite. E.g. '(null,5]', '(-infinity,5]', '(,5]'. + + + + + The upper bound is infinite or indefinite. E.g. '[0,null)', '[0,infinity)', '[0,)'. + + + + + Both the lower and upper bounds are inclusive. + + + + + Both the lower and upper bounds are indefinite. + + + + + The lower bound is both inclusive and indefinite. This represents an error condition. + + + + + The upper bound is both inclusive and indefinite. This represents an error condition. + + + + + Represents a PostgreSQL tsquery. This is the base class for the + lexeme, not, or, and, and "followed by" nodes. + + + + + Node kind + + + + + NodeKind + + + + + Represents the empty tsquery. Should only be used at top level. + + + + + Lexeme + + + + + Not operator + + + + + And operator + + + + + Or operator + + + + + "Followed by" operator + + + + + Constructs an . + + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Parses a tsquery in PostgreSQL's text format. + + + + + + + + + + + + + Returns a value indicating whether this instance and a specified object represent the same value. + + An object to compare to this instance. + if g is equal to this instance; otherwise, . + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + if and are equal; otherwise, . + + + + Indicates whether the values of two specified objects are not equal. + + The first object to compare. + The second object to compare. + if and are not equal; otherwise, . + + + + TsQuery Lexeme node. + + + + + Lexeme text. + + + + + Weights is a bitmask of the Weight enum. + + + + + Prefix search. + + + + + Creates a tsquery lexeme with only lexeme text. + + Lexeme text. + + + + Creates a tsquery lexeme with lexeme text and weights. + + Lexeme text. + Bitmask of enum Weight. + + + + Creates a tsquery lexeme with lexeme text, weights and prefix search flag. + + Lexeme text. + Bitmask of enum Weight. + Is prefix search? + + + + Weight enum, can be OR'ed together. + + + + + None + + + + + D + + + + + C + + + + + B + + + + + A + + + + + + + + + + + TsQuery Not node. + + + + + Child node + + + + + Creates a not operator, with a given child node. + + + + + + + + + + + + Base class for TsQuery binary operators (& and |). + + + + + Left child + + + + + Right child + + + + + Constructs a . + + + + + TsQuery And node. + + + + + Creates an and operator, with two given child nodes. + + + + + + + + + + + + + TsQuery Or Node. + + + + + Creates an or operator, with two given child nodes. + + + + + + + + + + + + + TsQuery "Followed by" Node. + + + + + The distance between the 2 nodes, in lexemes. + + + + + Creates a "followed by" operator, specifying 2 child nodes and the + distance between them in lexemes. + + + + + + + + + + + + + + Represents an empty tsquery. Shold only be used as top node. + + + + + Creates a tsquery that represents an empty query. Should not be used as child node. + + + + + + + + + + + Represents a PostgreSQL tsvector. + + + + + Parses a tsvector in PostgreSQL's text format. + + + + + + + Returns the lexeme at a specific index + + + + + + + Gets the number of lexemes. + + + + + Returns an enumerator. + + + + + + Returns an enumerator. + + + + + + Gets a string representation in PostgreSQL's format. + + + + + + + + + + + + + + + Represents a lexeme. A lexeme consists of a text string and optional word entry positions. + + + + + Gets or sets the text. + + + + + Creates a lexeme with no word entry positions. + + + + + + Creates a lexeme with word entry positions. + + + + + + + Gets a word entry position. + + + + + + + Gets the number of word entry positions. + + + + + Creates a string representation in PostgreSQL's format. + + + + + + Represents a word entry position and an optional weight. + + + + + Creates a WordEntryPos with a given position and weight. + + Position values can range from 1 to 16383; larger numbers are silently set to 16383. + A weight labeled between A and D. + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + The position is a 14-bit unsigned integer indicating the position in the text this lexeme occurs. Cannot be 0. + + + + + Prints this lexeme in PostgreSQL's format, i.e. position is followed by weight (weight is only printed if A, B or C). + + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + D, the default + + + + + C + + + + + B + + + + + A + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + Represents a PostgreSQL point type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL line type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Line Segment type. + + + + + Represents a PostgreSQL box type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Path type. + + + + + Represents a PostgreSQL Polygon type. + + + + + Represents a PostgreSQL Circle type. + + + + + Represents a PostgreSQL inet type, which is a combination of an IPAddress and a subnet mask. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL cidr type. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL tid value + + + https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + + Block number + + + + + Tuple index within block + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + + + + The name of PostgreSQL field that corresponds to this CLR property or field + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + The name of PostgreSQL field that corresponds to this CLR property or field + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + +
+
diff --git a/db_lab/bin/Debug/System.Buffers.dll b/db_lab/bin/Debug/System.Buffers.dll new file mode 100644 index 0000000..f2d83c5 Binary files /dev/null and b/db_lab/bin/Debug/System.Buffers.dll differ diff --git a/db_lab/bin/Debug/System.Buffers.xml b/db_lab/bin/Debug/System.Buffers.xml new file mode 100644 index 0000000..e243dce --- /dev/null +++ b/db_lab/bin/Debug/System.Buffers.xml @@ -0,0 +1,38 @@ + + + System.Buffers + + + + Provides a resource pool that enables reusing instances of type . + The type of the objects that are in the resource pool. + + + Initializes a new instance of the class. + + + Creates a new instance of the class. + A new instance of the class. + + + Creates a new instance of the class using the specifed configuration. + The maximum length of an array instance that may be stored in the pool. + The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access. + A new instance of the class with the specified configuration. + + + Retrieves a buffer that is at least the requested length. + The minimum length of the array. + An array of type that is at least minimumLength in length. + + + Returns an array to the pool that was previously obtained using the method on the same instance. + A buffer to return to the pool that was previously obtained using the method. + Indicates whether the contents of the buffer should be cleared before reuse. If clearArray is set to true, and if the pool will store the buffer to enable subsequent reuse, the method will clear the array of its contents so that a subsequent caller using the method will not see the content of the previous caller. If clearArray is set to false or if the pool will release the buffer, the array&#39;s contents are left unchanged. + + + Gets a shared instance. + A shared instance. + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/System.Collections.Immutable.dll b/db_lab/bin/Debug/System.Collections.Immutable.dll new file mode 100644 index 0000000..ad944df Binary files /dev/null and b/db_lab/bin/Debug/System.Collections.Immutable.dll differ diff --git a/db_lab/bin/Debug/System.Collections.Immutable.xml b/db_lab/bin/Debug/System.Collections.Immutable.xml new file mode 100644 index 0000000..6c749c0 --- /dev/null +++ b/db_lab/bin/Debug/System.Collections.Immutable.xml @@ -0,0 +1,6100 @@ + + + + System.Collections.Immutable + + + + Provides a set of initialization methods for instances of the class. + + + Creates a from an according to specified key selector function. + An from which to create a . + A function to extract a key from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + A that contains the keys and values selected from the input sequence. + + + Creates a with the specified key/value pairs. + The key/value pairs to use to populate the dictionary. + The comparer implementation to use to compare keys for equality. If , is used. + The type of the keys in the dictionary. + The type of the values in the dictionary. + A that contains the specified keys and values. + + + Creates a from an according to specified key selector and element selector functions. + An from which to create a . + A function to extract a key from each element. + A transform function to produce a result element value from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + The type of the value returned by . + A that contains the keys and values selected from the input sequence. + + + Provides an immutable, read-only dictionary optimized for fast lookup and enumeration. + The type of the keys in the dictionary. + The type of the values in this dictionary. + + + Determines whether the dictionary contains the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the specified key; otherwise, . + + + Copies the elements of the dictionary to an array of type , starting at the specified . + The array that is the destination of the elements copied from the dictionary. + The zero-based index in at which copying begins. + + + Copies the elements of the dictionary to a span of type . + The span that is the destination of the elements copied from the dictionary. + + + Returns an enumerator that iterates through the dictionary. + An enumerator that iterates through the dictionary. + + + Gets either a reference to a in the dictionary or a reference if the key does not exist in the dictionary. + The key used for lookup. + A reference to a in the dictionary or a reference if the key does not exist in the dictionary. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the . + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Removes the element with the specified key from the . + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Adds an element with the provided key and value to the object. + The to use as the key of the element to add. + The to use as the value of the element to add. + + + Removes all elements from the object. + + + Determines whether the object contains an element with the specified key. + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + Returns an object for the object. + An object for the object. + + + Removes the element with the specified key from the object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The key of the value to get. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, the default value for the type of . + + if the dictionary contains an element with the specified key; otherwise, . + + + Gets the comparer used by this dictionary. + + + Gets the number of key/value pairs contained in the dictionary. + + + Gets an empty . + + + Gets a reference to the value associated with the specified key. + The key of the value to get. + + does not exist in the collection. + A reference to the value associated with the specified key. + + + Gets a collection containing the keys in the dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the element that has the specified key in the read-only dictionary. + The key to locate. + The element that has the specified key in the read-only dictionary. + + + Gets an enumerable collection that contains the keys in the read-only dictionary. + An enumerable collection that contains the keys in the read-only dictionary. + + + Gets an enumerable collection that contains the values in the read-only dictionary. + An enumerable collection that contains the values in the read-only dictionary. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + Gets a value indicating whether the object is read-only. + + true if the object is read-only; otherwise, false. + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key, or null if the key does not exist. + + + Gets an object containing the keys of the object. + An object containing the keys of the object. + + + Gets an object containing the values in the object. + An object containing the values in the object. + + + Gets a collection containing the values in the dictionary. + + + Enumerates the elements of a . + + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + + Creates a with the specified values. + The values to use to populate the set. + The comparer implementation to use to compare values for equality. If , is used. + The type of the values in the set. + A frozen set. + + + Provides an immutable, read-only set optimized for fast lookup and enumeration. + The type of the values in this set. + + + Determines whether the set contains the specified element. + The element to locate. + + if the set contains the specified element; otherwise, . + + + Copies the values in the set to an array, starting at the specified . + The array that is the destination of the values copied from the set. + The zero-based index in at which copying begins. + + + Copies the values in the set to a span. + The span that is the destination of the values copied from the set. + + + Returns an enumerator that iterates through the set. + An enumerator that iterates through the set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper subset of other; otherwise, false. + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper superset of other; otherwise, false. + + + Determines whether a set is a subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a subset of other; otherwise, false. + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a superset of other; otherwise, false. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + true if the current set and other share at least one common element; otherwise, false. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + true if the current set is equal to other; otherwise, false. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in the current set, in the specified collection, or in both. + The collection to compare to the current set. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the default value of T when the search yielded no match. + A value indicating whether the search was successful. + + + Gets the comparer used by this set. + + + Gets the number of values contained in the set. + + + Gets an empty . + + + Gets a collection containing the values in the set. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the values of a . + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an immutable collection of key/value pairs. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of keys in the dictionary. + The type of values in the dictionary. + + + Adds an element with the specified key and value to the dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether the immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Represents a list of elements that cannot be modified. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Makes a copy of the list, and adds the specified object to the end of the copied list. + The object to add to the list. + A new list with the object added. + + + Makes a copy of the list and adds the specified objects to the end of the copied list. + The objects to add to the list. + A new list with the elements added. + + + Creates a list with all the items removed, but with the same sorting and ordering semantics as this list. + An empty list that has the same sorting and ordering semantics as this instance. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the . This value can be null for reference types. + The zero-based starting indexes of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use to locate . + The zero-based index of the first occurrence of within the range of elements in the that starts at and contains number of elements if found; otherwise -1. + + + Inserts the specified element at the specified index in the immutable list. + The zero-based index at which to insert the value. + The object to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The zero-based index at which the new elements should be inserted. + The elements to insert. + A new immutable list that includes the specified elements. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to match . + Returns . + + + Removes the first occurrence of a specified object from this immutable list. + The object to remove from the list. + The equality comparer to use to locate . + A new list with the specified object removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes the specified object from the list. + The objects to remove from the list. + The equality comparer to use to determine if match any objects in the list. + A new immutable list with the specified objects removed, if matched objects in the list. + + + Removes a range of elements from the . + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + A new immutable list with the elements removed. + + + Returns a new list with the first matching element in the list replaced with the specified element. + The element to be replaced. + The element to replace the first occurrence of with. + The equality comparer to use for matching . + + does not exist in the list. + A new list that contains , even if is the same as . + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + A new list that contains the new element, even if the element at the specified location is the same as the new element. + + + Represents an immutable first-in, first-out collection of objects. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Returns a new queue with all the elements removed. + An empty immutable queue. + + + Removes the first element in the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue with the first element removed. This value is never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue with the specified element added. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a value that indicates whether this immutable queue is empty. + + if this queue is empty; otherwise, . + + + Represents a set of elements that can only be modified by creating a new instance of the set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored in the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable set contains a specified element. + The element to locate in the set. + + if the set contains the specified value; otherwise, . + + + Removes the elements in the specified collection from the current immutable set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains only elements that exist in this set and the specified set. + The collection to compare to the current . + A new immutable set that contains elements that exist in both sets. + + + Determines whether the current immutable set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a proper (strict) superset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Determines whether the set contains a specified value. + The value to search for. + The matching value from the set, if found, or equalvalue if there are no matches. + + if a matching value was found; otherwise, . + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Represents an immutable last-in-first-out (LIFO) collection. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns the element at the top of the immutable stack without removing it. + The stack is empty. + The element at the top of the stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets a value that indicates whether this immutable stack is empty. + + if this stack is empty; otherwise,. + + + Provides methods for creating an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Searches the sorted immutable array for a specified element using the default comparer and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The comparer implementation to use when comparing elements, or null to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The comparer to use when comparing elements for equality or to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + +-or- + + is , and is of a type that is not compatible with the elements of . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Creates an empty immutable array. + The type of elements stored in the array. + An empty immutable array. + + + Creates an immutable array that contains the specified object. + The object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified object. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The fourth object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array from the specified array of objects. + The array of objects to populate the array with. + The type of elements stored in the array. + An immutable array that contains the array of items. + + + Creates an immutable array with specified objects from another array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an immutable array with the specified objects from another immutable array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates a mutable array that can be converted to an without allocating new memory. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a mutable array that can be converted to an without allocating new memory. + The initial capacity of the builder. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a new populated with the specified items. + The elements to add to the array. + The type of element stored in the array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to pass to the selector mapping function. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to be passed to the selector mapping function. + The type of element to be stored in the target array. + An immutable array that contains the specified items. + + + Creates an immutable array from the specified collection. + The collection of objects to copy to the immutable array. + The type of elements contained in . + An immutable array that contains the specified collection of objects. + + + Creates an immutable array from the current contents of the builder's array. + The builder to create the immutable array from. + The type of elements contained in the immutable array. + An immutable array that contains the current contents of the builder's array. + + + Produce an immutable array of contents from specified elements. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Converts the span to an immutable array. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Represents an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored by the array. + + + Gets an empty immutable array. + + + Returns a copy of the original array with the specified item added to the end. + The item to be added to the end of the array. + A new array with the specified item added to the end. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Returns a new immutable array that contains the elements of this array cast to a different type. + The type of array element to return. + An immutable array that contains the elements of this array, cast to a different type. If the cast fails, returns an array whose property returns . + + + Creates a new read-only memory region over this immutable array. + The read-only memory representation of this immutable array. + + + Creates a new read-only span over this immutable array. + The read-only span representation of this immutable array. + + + Creates a over the portion of the current , beginning at a specified position for a specified length. + The index at which to begin the span. + The number of items in the span. + The representation of the . + + + Creates a span over the portion of the current based on the specified . + A range in the current . + A span representation of the . + + + Initializes a new instance of the struct by casting the underlying array to an array of type . + The type of array element to return. + The cast is illegal. + An immutable array instance with elements cast to the new type. + + + Initializes a new instance of the struct based on the contents of an existing instance, allowing a covariant static cast to efficiently reuse the existing array. + The array to initialize the array with. No copy is made. + The type of array element to return. + An immutable array instance with elements cast to the new type. + + + Returns an array with all the elements removed. + An array with all of the elements removed. + + + Determines whether the specified item exists in the array. + The item to search for. + + if the specified item was found in the array; otherwise . + + + Determines whether the specified item exists in the array. + The item to search for. + The equality comparer to use in the search. + If , is used. + + if an equal value was found in the array; otherwise. + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the contents of this array to the specified array starting at the specified destination index. + The array to copy to. + The index in where copying begins. + + + Copies the specified items in this array to the specified array at the specified starting index. + The index of this array where copying begins. + The array to copy to. + The index in where copying begins. + The number of elements to copy from this array. + + + Copies the elements of current to a . + The that is the destination of the elements copied from current . + + + Indicates whether specified array is equal to this array. + An object to compare with this object. + + if is equal to this array; otherwise, . + + + Determines if this array is equal to the specified object. + The to compare with this array. + + if this array is equal to ; otherwise, . + + + Returns an enumerator that iterates through the contents of the array. + An enumerator. + + + Returns a hash code for this instance. + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + Searches the array for the specified item. + The item to search for. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the item inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Gets a read-only reference to the element at the specified in the read-only list. + The zero-based index of the element to get a reference to. + A read-only reference to the element at the specified in the read-only list. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Filters the elements of this array to those assignable to the specified type. + The type to filter the elements of the sequence on. + An that contains elements from the input sequence of type of . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates whether two arrays are not equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are not equal; otherwise, . + + + Checks for inequality between two array. + The object to the left of the operator. + The object to the right of the operator. + + if the two arrays are not equal; otherwise, . + + + Returns an array with the first occurrence of the specified element removed from the array. If no match is found, the current array is returned. + The item to remove. + A new array with the item removed. + + + Returns an array with the first occurrence of the specified element removed from the array. + + If no match is found, the current array is returned. + The item to remove. + The equality comparer to use in the search. + A new array with the specified item removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the item at the specified index removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + A new array with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + A new list with the elements removed. + + + Removes the specified items from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The item to add to the list. + The new array that contains at the specified index. + + + Forms a slice out of the current starting at a specified index for a specified length. + The index at which to begin this slice. + The desired length for the slice. + An that consists of elements from the current , starting at . + + + Sorts the elements in the immutable array using the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the immutable array using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the entire using the specified . + The to use when comparing elements. + + is null. + The sorted list. + + + Sorts the specified elements in the immutable array using the specified comparer. + The index of the first element to sort. + The number of elements to include in the sort. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Throws in all cases. + The item to add to the end of the array. + + + Throws in all cases. + + + Throws in all cases. + The object to remove from the array. + Throws in all cases. + + + Returns an enumerator that iterates through the array. + The property returns . + An enumerator that can be used to iterate through the array. + + + Throws in all cases. + The index of the location to insert the item. + The item to insert. + + + Throws in all cases. + The index. + + + Copies this array to another array starting at the specified index. + The array to copy this array to. + The index in the destination array to start the copy operation. + + + Returns an enumerator that iterates through the immutable array. + The property returns . + An enumerator that iterates through the immutable array. + + + Throws in all cases. + The value to add to the array. + Thrown in all cases. + Throws in all cases. + + + Throws in all cases. + Thrown in all cases. + + + Throws in all cases. + The value to check for. + Throws in all cases. + + + Gets the value at the specified index. + The value to return the index of. + The value of the element at the specified index. + + + Throws in all cases. + Index that indicates where to insert the item. + The value to insert. + Thrown in all cases. + + + Throws in all cases. + The value to remove from the array. + Thrown in all cases. + + + Throws in all cases. + The index of the item to remove. + Thrown in all cases. + + + Returns a copy of the original array with the specified item added to the end. + The value to add to the end of the array. + A new array with the specified item added to the end. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the end of the array. + A new array with the elements added to the end. + + + Returns an array with all the elements removed. + An array with all the elements removed. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the specified value inserted. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new array with the specified values inserted. + + + Returns an array with the first occurrence of the specified element removed from the array; if no match is found, the current array is returned. + The value to remove from the array. + The equality comparer to use in the search. + A new array with the value removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the specified item removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The value to add to the list. + The new array that contains at the specified index. + + + Determines whether the current collection element precedes, occurs in the same position as, or follows another element in the sort order. + The element to compare with the current instance. + The object used to compare members of the current array with the corresponding members of other array. + The arrays are not the same length. + An integer that indicates whether the current element precedes, is in the same position or follows the other element. + + + Determines whether this array is structurally equal to the specified array. + The array to compare with the current instance. + An object that determines whether the current instance and other are structurally equal. + + if the two arrays are structurally equal; otherwise, . + + + Returns a hash code for the current instance. + An object that computes the hash code of the current object. + The hash code for the current instance. + + + Creates a mutable array that has the same contents as this array and can be efficiently mutated across multiple operations using standard mutable interfaces. + The new builder with the same contents as this array. + + + Gets a value indicating whether this array was declared but not initialized. + + if the is ; otherwise, . + + + Gets a value indicating whether this is empty or is not initialized. + + if the is or ; otherwise, . + + + Gets a value indicating whether this is empty. + + if the is empty; otherwise, . + + + Gets the element at the specified index in the immutable array. + The zero-based index of the element to get. + The element at the specified index in the immutable array. + + + Gets the number of elements in the array. + The number of elements in the array. + + + Gets the number of items in the collection. + The property returns . + Number of items in the collection. + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the element at the specified index in the read-only list. + The zero-based index of the element to get. + Always thrown from the setter. + The property returns . + The element at the specified index in the read-only list. + + + Gets the number of items in the collection. + The property returns . + The number of items in the collection. + + + Gets the element at the specified index. + The index. + The property returns . + The element. + + + Gets the size of the array. + The property returns . + The number of items in the collection. + + + See the interface. Always returns since since immutable collections are thread-safe. + Boolean value determining whether the collection is thread-safe. + + + Gets the sync root. + An object for synchronizing access to the collection. + + + Gets a value indicating whether this instance is fixed size. + + if this instance is fixed size; otherwise, . + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Always thrown from the setter. + The property returns . + The object at the specified index. + + + A writable array accessor that can be converted into an instance without allocating extra memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the array. + The object to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + The type that derives from the type of item already in the array. + + + Removes all items from the array. + + + Determines whether the array contains a specific value. + The object to locate in the array. + + if the object is found; otherwise, . + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the current contents to the specified array. + The array to copy to. + The index to start the copy operation. + + + Copies the contents of this array to the specified array. + The index into this collection of the first element to copy. + The array to copy to. + The index into the destination array to which the first copied element is written. + The number of elements to copy. + + + Copies the current contents to the specified . + The to copy to. + + + Returns the current contents as an and sets the collection to a zero length array. + An immutable array. + + + Gets an object that can be used to iterate through the collection. + An object that can be used to iterate through the collection. + + + Determines the index of a specific item in the array. + The item to locate in the array. + The index of if it's found in the list; otherwise, -1. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The index of if it's found in the list; otherwise, -1. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + If , is used. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The number of elements to search. + The index of if it's found in the list; otherwise, -1. + + + Determines the index for the specified item. + The item to locate in the array. + The index at which to begin the search. + The starting position of the search. + The equality comparer to use in the search. + The index of if it's found in the list; otherwise, -1. + + + Inserts an item in the array at the specified index. + The zero-based index at which to insert the item. + The object to insert into the array. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Gets a read-only reference to the element at the specified index. + The item index. + + is greater or equal to the array count. + The read-only reference to the element at the specified index. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The 0-based index where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Extracts the internal array as an and replaces it with a zero length array. + When doesn't equal . + An immutable array containing the elements of the builder. + + + Removes the specified element. + The item to remove. + + if was found and removed; otherwise, . + + + Removes the first occurrence of the specified element from the builder. + If no match is found, the builder remains unchanged. + The element to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + + + Removes the item at the specified index from the array. + The zero-based index of the item to remove. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified values from this list. + The 0-based index into the array for the element to omit from the returned array. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + + + Reverses the order of elements in the collection. + + + Sorts the contents of the array. + + + Sorts the contents of the array. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Sorts the elements in the entire array using the specified . + The to use when comparing elements. + + is null. + + + Sorts the contents of the array. + The starting index for the sort. + The number of elements to include in the sort. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Creates a new array with the current contents of this . + A new array with the contents of this . + + + Returns an immutable array that contains the current contents of this . + An immutable array that contains the current contents of this . + + + Gets or sets the length of the internal array. When set, the internal array is reallocated to the given capacity if it is not already the specified length. + The length of the internal array. + + + Gets or sets the number of items in the array. + The number of items in the array. + + + Gets or sets the item at the specified index. + The index of the item to get or set. + The specified index is not in the array. + The item at the specified index. + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + An array enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances to the next value in the array. + + if another item exists in the array; otherwise, . + + + Gets the current item. + The current item. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Determines whether the specified immutable dictionary contains the specified key/value pair. + The immutable dictionary to search. + The key to locate in the immutable dictionary. + The value to locate on the specified key, if the key is found. + The type of the keys in the immutable dictionary. + The type of the values in the immutable dictionary. + + if this map contains the specified key/value pair; otherwise, . + + + Creates an empty immutable dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates a new immutable dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary that contains the specified items. + The items used to populate the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The comparer implementation to use to compare values for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The type of the key. + The type of the value. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The type of the key. + The type of the value. + The value for the key, or if no matching key was found. + + + Constructs an immutable dictionary from an existing collection of elements, applying a transformation function to the source keys. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Constructs an immutable dictionary based on some transformation of a sequence. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The key comparer to use for the dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable dictionary from the current contents of the builder's dictionary. + The builder to create the immutable dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Represents an immutable, unordered collection of keys and values. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the keys in the dictionary. + The type of the values in the dictionary. + + + Gets an empty immutable dictionary. + + + Adds an element with the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the immutable dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified key. + The key to locate. + + if the immutable dictionary contains an element with the specified key; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the immutable dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the immutable dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the additional key/value pair. + + + See the interface. + Sequence of key/value pairs to be added to the dictionary. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key-value comparison rules as this dictionary instance. + The immutable dictionary instance. + + + See the interface. + Key of the entry to be removed. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + See the interface. + Sequence of keys to be removed. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + See the interface. + Key of entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the specified key/value pair. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + The key-value pairs to set on the map. Any keys that conflict with existing keys will replace the previous values. + A copy of the immutable dictionary with updated key-value pairs. + + + Creates an immutable dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Gets an instance of the immutable dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The type of the key. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable dictionary. + The key comparer. + + + Gets the keys in the immutable dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The type of the key. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable dictionary. + The values in the immutable dictionary. + + + Represents a hash map that mutates with little or no memory allocations and that can produce or build on immutable hash map instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + + is null. + An element with the same key already exists in the dictionary. + The dictionary is read-only. + + + Adds the specified item to the immutable dictionary. + The object to add to the dictionary. + The dictionary is read-only. + + + Adds a sequence of values to this collection. + The items to add to this collection. + + + Removes all items from the immutable dictionary. + The dictionary is read-only. + + + Determines whether the immutable dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified key. + The key to locate in the dictionary. + + is null. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified value. + The value to locate in the immutable dictionary. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the collection. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + + is null. + The dictionary is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the dictionary. + + + Removes the first occurrence of a specific object from the immutable dictionary. + The object to remove from the dictionary. + The dictionary is read-only. + + if was successfully removed from the dictionary; otherwise, . This method also returns false if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable dictionary. + The keys for entries to remove from the dictionary. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array of type that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable dictionary based on the contents of this instance. + An immutable dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Returns the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, returns the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the immutable dictionary contains an element with the specified key; otherwise, . + + + Gets the number of elements contained in the immutable dictionary. + The number of elements contained in the immutable dictionary. + + + Gets or sets the element with the specified key. + The element to get or set. + + is . + The property is being retrieved, and is not found. + The property is being set, and the is read-only. + The element that has the specified key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a collection that contains the keys of the immutable dictionary. + A collection that contains the keys of the object that implements the immutable dictionary. + + + Gets a value that indicates whether the collection is read-only. + + if the collection is read-only; otherwise, . + + + Gets a collection containing the keys of the generic dictionary. + A collection containing the keys of the object that implements the generic dictionary. + + + Gets a collection containing the values in the generic dictionary. + A collection containing the values in the object that implements the generic dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + Value stored under specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of the immutable dictionary without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable dictionary. + The dictionary was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the dictionary. + The dictionary was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element in the dictionary at the current position of the enumerator. + + + Gets the current element. + Current element in enumeration. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable hash set. + The type of items to be stored in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the specified array of items. + An array that contains the items to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates an empty immutable hash set that uses the specified equality comparer. + The object to use for comparing objects in the set for equality. + The type of items in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the items in the specified collection and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + An array that contains the items to prepopulate the hash set with. + The type of items stored in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The equality comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable collection prefilled with the specified items. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable hash set builder. + The type of items stored by the collection. + The immutable hash set builder. + + + Creates a new immutable hash set builder. + The object to use for comparing objects in the set for equality. + The type of items stored by the collection. + The new immutable hash set builder. + + + Creates a new immutable hash set prefilled with the specified items. + The items to add to the hash set. + The type of items stored by the collection. + The new immutable hash set that contains the specified items. + + + Creates a new immutable hash set that contains the specified items and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The items add to the collection before immutability is applied. + The type of items stored in the collection. + The new immutable hash set. + + + Enumerates a sequence and produces an immutable hash set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable hash set of its contents, and uses the specified equality comparer for the set type. + The sequence to enumerate. + The object to use for comparing objects in the set for equality. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence and uses the specified equality comparer. + + + Creates an immutable hash set from the current contents of the builder's set. + The builder to create the immutable hash set from. + The type of the elements in the hash set. + An immutable hash set that contains the current contents in the builder's set. + + + Represents an immutable, unordered hash set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the hash set. + + + Gets an immutable hash set for this type that uses the default . + + + Adds the specified element to the hash set. + The element to add to the set. + A hash set that contains the added value and any values previously held by the object. + + + Retrieves an empty immutable hash set that has the same sorting and ordering semantics as this instance. + An empty hash set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable hash set contains the specified element. + The object to locate in the immutable hash set. + + if is found in the ; otherwise, . + + + Removes the elements in the specified collection from the current immutable hash set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Determines whether the current immutable hash set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable hash set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable hash set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable hash set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Adds an item to the set. + The object to add to the set. + The set is read-only. + + + Removes all items from this set. + The set is read-only. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + + if the element is successfully removed; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that iterates through the collection. + + + Adds an element to the current set and returns a value that indicates whether the element was successfully added. + The element to add to the collection. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current collection. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or in the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a set. + An enumerator that can be used to iterate through the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting or ordering semantics as this instance. + + + Removes the elements in the specified collection from the current set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates an immutable hash set that has the same contents as this set and can be efficiently mutated across multiple operations by using standard mutable interfaces. + A set with the same contents as this set that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Creates a new immutable hash set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable hash set with the items added; or the original set if all the items were already in the set. + + + Gets an instance of the immutable hash set that uses the specified equality comparer for its search methods. + The equality comparer to use. + An instance of this immutable hash set that uses the given comparer. + + + Gets the number of elements in the immutable hash set. + The number of elements in the hash set. + + + Gets a value that indicates whether the current immutable hash set is empty. + + if this instance is empty; otherwise, . + + + Gets the object that is used to obtain hash codes for the keys and to check the equality of values in the immutable hash set. + The comparer used to obtain hash codes for the keys and check equality. + + + See the interface. + + if the is read-only; otherwise, . + + + See the interface. + + if access to the is synchronized (thread safe); otherwise, . + + + See . + An object that can be used to synchronize access to the . + + + Represents a hash set that mutates with little or no memory allocations and that can produce or build on immutable hash set instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the immutable hash set. + The item to add. + + if the item did not already belong to the collection; otherwise, . + + + Removes all items from the immutable hash set. + The hash set is read-only. + + + Determines whether the immutable hash set contains a specific value. + The object to locate in the hash set. + + if is found in the hash set ; otherwise, . + + + Removes all elements in the specified collection from the current hash set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the immutable hash set. + An enumerator that can be used to iterate through the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of a specific object from the immutable hash set. + The object to remove from the set. + The set is read-only. + + if was successfully removed from the set ; otherwise, . This method also returns if is not found in the original set. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an item to the hash set. + The object to add to the set. + The set is read-only. + + + Copies the elements of the hash set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the hash set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current set. + + + Gets the number of elements contained in the immutable hash set. + The number of elements contained in the immutable hash set. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Enumerates the contents of the immutable hash set without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable hash set. + The hash set was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the hash set. + + + Sets the enumerator to its initial position, which is before the first element in the hash set. + The hash set was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Gets the current element. + The element in the collection at the current position of the enumerator. + + + Contains interlocked exchange mechanisms for immutable collections. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The value to use if no previous value exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The function that receives the key and returns a new value to add to the dictionary when no value previously exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Atomically enqueues an element to the end of a queue. + The variable or field to atomically update. + The value to enqueue. + The type of items contained in the collection. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified key is not in the dictionary. + The key for the value to get or add. + The value to add to the dictionary the key is not found. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. This delegate will not be invoked more than once. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. + The argument to pass to the value factory. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The type of the argument supplied to the value factory. + The value at the specified key or if the key was not present. + + + Compares two immutable arrays for equality and, if they are equal, replaces one of the arrays. + The destination, whose value is compared with and possibly replaced. + The value that replaces the destination value if the comparison results in equality. + The value that is compared to the value at . + The type of element stored by the array. + The original value in . + + + Sets an array to the specified array and returns a reference to the original array, as an atomic operation. + The array to set to the specified value. + The value to which the parameter is set. + The type of element stored by the array. + The original value of . + + + Sets an array to the specified array if the array has not been initialized. + The array to set to the specified value. + The value to which the parameter is set, if it's not initialized. + The type of element stored by the array. + + if the array was assigned the specified value; otherwise, . + + + Pushes a new element onto the stack. + The stack to update. + The value to push on the stack. + The type of items in the stack. + + + Adds the specified key and value to the dictionary if the key is not in the dictionary. + The dictionary to update with the specified key and value. + The key to add, if is not already defined in the dictionary. + The value to add. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key is not in the dictionary; otherwise, . + + + Atomically removes and returns the specified element at the head of the queue, if the queue is not empty. + The variable or field to atomically update. + Set to the value from the head of the queue, if the queue not empty. + The type of items in the queue. + + if the queue is not empty and the head element is removed; otherwise, . + + + Removes an element from the top of the stack, if there is an element to remove. + The stack to update. + Receives the value removed from the stack, if the stack is not empty. + The type of items in the stack. + + if an element is removed from the stack; otherwise, . + + + Removes the element with the specified key, if the key exists. + The dictionary to update. + The key to remove. + Receives the value of the removed item, if the dictionary is not empty. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key was found and removed; otherwise, . + + + Sets the specified key to the specified value if the specified key already is set to a specific value. + The dictionary to update. + The key to update. + The new value to set. + The current value for in order for the update to succeed. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if and are present in the dictionary and comparison was updated to ; otherwise, . + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data in the immutable array. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data in the immutable array. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable list. + The type of items to be stored in the . + An empty immutable list. + + + Creates a new immutable list that contains the specified item. + The item to prepopulate the list with. + The type of items in the . + A new that contains the specified item. + + + Creates a new immutable list that contains the specified array of items. + An array that contains the items to prepopulate the list with. + The type of items in the . + A new immutable list that contains the specified items. + + + Creates a new immutable list that contains the items from the specified span of items. + A span that contains the items to prepopulate the list with. + The type of items stored by the collection. + A new immutable list that contains the specified items. + + + Creates a new immutable list builder. + The type of items stored by the collection. + The immutable collection builder. + + + Creates a new immutable list that contains the specified items. + The items to add to the list. + The type of items in the . + An immutable list that contains the specified items. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Removes the specified value from this list. + The list to search. + The value to remove. + The type of items in the list. + A new immutable list with the element removed, or this list if the element is not in this list. + + + Removes the specified values from this list. + The list to search. + The items to remove if matches are found in this list. + The type of items in the list. + A new immutable list with the elements removed. + + + Replaces the first equal element in the list with the specified element. + The list to search. + The element to replace. + The element to replace the old element with. + The type of items in the list. + + does not exist in the list. + The new list -- even if the value being replaced is equal to the new value for that position. + + + Enumerates a sequence and produces an immutable list of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable list that contains the items in the specified sequence. + + + Creates an immutable list from the current contents of the builder's collection. + The builder to create the immutable list from. + The type of the elements in the list. + An immutable list that contains the current contents in the builder's collection. + + + Represents an immutable list, which is a strongly typed list of objects that can be accessed by index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Gets an empty immutable list. + + + Adds the specified object to the end of the immutable list. + The object to add. + A new immutable list with the object added. + + + Adds the elements of the specified collection to the end of the immutable list. + The collection whose elements will be added to the end of the list. + A new immutable list with the elements added. + + + Searches the entire sorted list for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be for reference types. + The default comparer cannot find a comparer implementation of the for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches the entire sorted list for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements or null to use the default comparer. + comparer is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches a range of elements in the sorted list for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements, or to use the default comparer. + index is less than 0 or is less than 0. + index and do not denote a valid range in the list. + + is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted list, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Removes all elements from the immutable list. + An empty list that retains the same sort or unordered semantics that this instance has. + + + Determines whether this immutable list contains the specified value. + The value to locate. + + if the list contains the specified value; otherwise, . + + + Converts the elements in the current immutable list to another type, and returns a list containing the converted elements. + A delegate that converts each element from one type to another type. + The type of the elements of the target array. + A list of the target type containing the converted elements from the current . + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Copies a range of elements from the immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list that contains all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Performs the specified action on each element of the immutable list. + The delegate to perform on each element of the immutable list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the immutable list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the entire immutable list, if found; otherwise, ?1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the list that starts at the specified index and contains the specified number of elements. + The object to locate in the list The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the first occurrence of item within the range of elements in the list that starts at index and contains count number of elements, if found; otherwise, -1. + + + Inserts the specified object into the immutable list at the specified index. + The zero-based index at which to insert the object. + The object to insert. + The new immutable list after the object is inserted. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which to insert the elements. + The collection whose elements should be inserted. + The new immutable list after the elements are inserted. + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + + is negative or not less than . + A read-only reference to the element at the given position. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the list that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the last occurrence of item within the range of elements in the list that contains count number of elements and ends at index, if found; otherwise, -1. + + + Removes the first occurrence of the specified object from this immutable list. + The object to remove. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes the first occurrence of the object that matches the specified value from this immutable list. + The value of the element to remove from the list. + The equality comparer to use in the search. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The new list with the elements removed. + + + Removes the element at the specified index. + The zero-based index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list. + The collection whose elements should be removed if matches are found in this list. + A new list with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes a range of elements, starting from the specified index and containing the specified number of elements, from this immutable list. + The starting index to begin removal. + The number of elements to remove. + A new list with the elements removed. + + + Replaces the specified element in the immutable list with a new element. + The element to replace. + The element to replace with. + + does not exist in the immutable list. + The new list with the replaced element, even if it is equal to the old element. + + + Replaces the specified element in the immutable list with a new element. + The element to replace in the list. + The element to replace with. + The comparer to use to check for equality. + A new list with the object replaced, or this list if the specified object is not in this list. + + + Reverses the order of the elements in the entire immutable list. + The reversed list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + The reversed list. + + + Replaces an element at a given position in the immutable list with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list with the replaced element, even if it is equal to the old element at that position. + + + Sorts the elements in the entire immutable list using the default comparer. + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The delegate to use when comparing elements. + + is . + The sorted list. + + + Sorts a range of elements in the immutable list using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Adds the specified item to the immutable list. + The item to add. + Always thrown. + + + Removes all items from the immutable list. + + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove. + Always thrown. + + if was successfully removed from the list; otherwise, . This method also returns if is not found in the original list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Inserts an object in the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert. + + + + Removes the value at the specified index. + The zero-based index of the item to remove. + + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from immutable list. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Adds an item to the immutable list. + The object to add to the list. + Always thrown. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the list. + + + Removes all items from the immutable list. + Always thrown. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + + if the object is found in the list; otherwise, . + + + Determines the index of a specific item in the immutable list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item into the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + Always thrown. + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + Always thrown. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove. + Always thrown. + + + Adds the specified value to this immutable list. + The value to add. + A new list with the element added. + + + Adds the specified values to this immutable list. + The values to add. + A new list with the elements added. + + + Retrieves an empty list that has the same sorting and ordering semantics as this instance. + An empty list that has the same sorting and ordering semantics as this instance. + + + Inserts the specified element at the specified index in the immutable list. + The index at which to insert the value. + The element to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The index at which to insert the elements. + The elements to insert. + A new immutable list that includes the specified elements. + + + Removes the element with the specified value from the list. + The value of the element to remove from the list. + The comparer to use to compare elements for equality. + A new with the specified element removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list that match the items specified. + The range of items to remove from the list, if found. + The equality comparer to use to compare elements. + + or is . + An immutable list with the items removed. + + + Removes the specified number of elements at the specified location from this list. + The starting index of the range of elements to remove. + The number of elements to remove. + A new list with the elements removed. + + + Replaces an element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + + does not exist in the list. + The new list. + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list. + + + Creates a list that has the same contents as this list and can be efficiently mutated across multiple operations using standard mutable interfaces. + The created list with the same contents as this list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements contained in the list. + The number of elements in the list. + + + Gets a value that indicates whether this list is empty. + + if the list is empty; otherwise, . + + + Gets the element at the specified index of the list. + The index of the element to retrieve. + In a get operation, is negative or not less than . + The element at the specified index. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the value at the specified index. + The zero-based index of the item to access. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + Value stored in the specified index. + + + This type is immutable, so it is always thread-safe. See the interface. + Boolean value determining whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value indicating whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + The value at the specified index. + + + Represents a list that mutates with little or no memory allocations and that can produce or build on immutable list instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an item to the immutable list. + The item to add to the list. + + + Adds a series of elements to the end of this list. + The elements to add to the end of the list. + + + Searches the entire for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the entire for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the specified range of the for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is less than 0. +-or- + + is less than 0. + + and do not denote a valid range in the . + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Removes all items from the immutable list. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + if item is found in the list; otherwise, . + + + Creates a new immutable list from the list represented by this builder by using the converter function. + The converter function. + The type of the output of the delegate converter function. + A new immutable list from the list represented by this builder. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list containing all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Performs the specified action on each element of the list. + The delegate to perform on each element of the list. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the range of elements in the immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Inserts an item to the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the immutable list. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the immutable list. The collection itself cannot be , but it can contain elements that are null, if type T is a reference type. + + + Gets a read-only reference to the value for a given into the list. + The index of the desired element. + A read-only reference to the value at the specified . + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the last occurrence of within the entire immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that extends from the first element to , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that contains number of elements and ends at , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + + if item was successfully removed from the list; otherwise, . This method also returns if item is not found in the list. + + + Removes the first occurrence matching the specified value from this list. + The item to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The number of elements removed from the immutable list. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove from the list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified range of values from this list. + The starting index to begin removal. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The old value does not exist in the list. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + The old value does not exist in the list. + + + Reverses the order of the elements in the entire immutable list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + + + Sorts the elements in the entire immutable list by using the default comparer. + + + Sorts the elements in the entire immutable list by using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + + + Sorts the elements in the entire immutable list by using the specified comparison object. + The object to use when comparing elements. + + is . + + + Sorts the elements in a range of elements in the immutable list by using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the list to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an item to the list. + The object to add to the list. + + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the list. + + + + Determines whether the list contains a specific value. + The object to locate in the list. + + + if the is found in the list; otherwise, . + + + Determines the index of a specific item in the list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item to the list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + + + + Removes the first occurrence of a specific object from the list. + The object to remove from the list. + + + + Creates an immutable list based on the contents of this instance. + An immutable list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements in this immutable list. + The number of elements in this list. + + + Gets or sets the value for a given index in the list. + The index of the item to get or set. + The value at the specified index. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + The object at the specified index. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances enumeration to the next element of the immutable list. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the list. + + + Sets the enumerator to its initial position, which is before the first element in the immutable list. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable queue. + The type of items to be stored in the immutable queue. + An empty immutable queue. + + + Creates a new immutable queue that contains the specified item. + The item to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified item. + + + Creates a new immutable queue that contains the specified array of items. + An array that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified array of items. + A span that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified items. + The items to add to the queue before immutability is applied. + The type of elements in the queue. + An immutable queue that contains the specified items. + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + The queue to remove the item from. + When this method returns, contains the item from the beginning of the queue. + The type of elements in the immutable queue. + The stack is empty. + The new queue with the item removed. + + + Represents an immutable queue. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Removes all objects from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + When this method returns, contains the element from the beginning of the queue. + The queue is empty. + The new immutable queue with the beginning element removed. + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Returns an enumerator that iterates through the immutable queue. + An enumerator that can be used to iterate through the queue. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a read-only reference to the element at the front of the queue. + The queue is empty. + Read-only reference to the element at the front of the queue. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Gets an empty immutable queue. + An empty immutable queue. + + + Gets a value that indicates whether this immutable queue is empty. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if this queue is empty; otherwise, . + + + Enumerates the contents of an immutable queue without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable queue. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the queue. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates a new immutable sorted dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key comparer. + The comparer implementation to use to evaluate keys for equality and sorting. + The items to add to the sorted dictionary. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + The new immutable sorted dictionary that contains the specified items and uses the specified key comparer. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key and value comparers. + The comparer implementation to use to compare keys for equality and sorting. + The comparer implementation to use to compare values for equality. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items and uses the specified comparers. + + + Creates an immutable sorted dictionary that contains the specified items and uses the default comparer. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable sorted dictionary from the current contents of the builder's dictionary. + The builder to create the immutable sorted dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Represents an immutable sorted dictionary. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the key contained in the dictionary. + The type of the value contained in the dictionary. + + + Gets an empty immutable sorted dictionary. + + + Adds an element with the specified key and value to the immutable sorted dictionary. + The key of the entry to add. + The value of entry to add. + The given key already exists in the dictionary but has a different value. + A new immutable sorted dictionary that contains the additional key/value pair. + + + Adds the specific key/value pairs to the immutable sorted dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable sorted dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable sorted dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether this immutable sorted map contains the specified key. + The key to locate. + + if the immutable dictionary contains the specified key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified value from the immutable sorted dictionary. + The value of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified value cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable sorted dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable sorted dictionary, possibly overwriting an existing value for the given key. + The key of the entry to add. + The key value to set. + A new immutable sorted dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable sorted dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + An immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the generic dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + The instance. + + + See the interface. + Sequence of key/value pairs to be added. + The instance. + + + See the interface. + The instance. + + + See the interface. + Key of entry to be removed. + The instance. + + + See the interface. + Sequence of keys to be removed. + The instance. + + + See the interface. + Key of entry to be updated. + Value of entry to be updated. + The instance. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + A set of key-value pairs to set on the map. + The instance. + + + Creates an immutable sorted dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. + + if the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets an instance of the immutable sorted dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable sorted dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable sorted dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable sorted dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The key to retrieve the value for. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable sorted dictionary. + The key comparer for the dictionary. + + + Gets the keys in the immutable sorted dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The object to use as the key of the element to access. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to be accessed. + Value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable sorted dictionary. + The values in the dictionary. + + + Represents a sorted dictionary that mutates with little or no memory allocations and that can produce or build on immutable sorted dictionary instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable sorted dictionary. + The key of the element to add. + The value of the element to add. + + + Adds the specified item to the immutable sorted dictionary. + The object to add to the dictionary. + + + Adds a sequence of values to the immutable sorted dictionary. + The items to add to the dictionary. + + + Removes all items from the immutable sorted dictionary. + + + Determines whether the immutable sorted dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate in the dictionary. The value can be for reference types. + + if the immutable sorted dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable sorted dictionary. + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original dictionary. + + + Removes the first occurrence of a specific object from the immutable sorted dictionary. + The object to remove from the dictionary. + + if was successfully removed from the dictionary; otherwise, . This method also returns if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable sorted dictionary. + The keys for entries to remove from the dictionary. + + + See . + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + See . + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable sorted dictionary based on the contents of this instance. + An immutable sorted dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets the number of elements in this immutable sorted dictionary. + The number of elements in this dictionary. + + + Gets or sets the value for a specified key in the immutable sorted dictionary. + The key to retrieve the value for. + The value associated with the given key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a strongly typed, read-only collection of elements. + A strongly typed, read-only collection of elements. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Returns a collection containing all keys stored in the dictionary. See . + A collection containing all keys stored in the dictionary. + + + Returns a collection containing all values stored in the dictionary. See . + A collection containing all values stored in the dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value associated with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable sorted dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable sorted dictionary. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted dictionary. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted set. + The type of items to be stored in the immutable set. + An empty immutable sorted set. + + + Creates a new immutable sorted set that contains the specified item. + The item to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates an empty immutable sorted set that uses the specified comparer. + The implementation to use when comparing items in the set. + The type of items in the immutable set. + An empty immutable set. + + + Creates a new immutable sorted set that contains the specified item and uses the specified comparer. + The implementation to use when comparing items in the set. + The item to prepopulate the set with. + The type of items stored in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items and uses the specified comparer. + The implementation to use when comparing items in the set. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable sorted set that contains the specified array of items. + A span that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Returns a collection that can be used to build an immutable sorted set. + The type of items stored by the collection. + The immutable collection builder. + + + Returns a collection that can be used to build an immutable sorted set. + The comparer used to compare items in the set for equality. + The type of items stored by the collection. + The immutable collection. + + + Creates a new immutable collection that contains the specified items. + The comparer to use to compare elements in this set. + The items to add to the set before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Creates a new immutable collection that contains the specified items. + The items to add to the set with before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Enumerates a sequence and produces an immutable sorted set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable sorted set of its contents, and uses the specified comparer. + The sequence to enumerate. + The comparer to use for initializing and adding members to the sorted set. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Creates an immutable sorted set from the current contents of the builder's set. + The builder to create the immutable sorted set from. + The type of the elements in the immutable sorted set. + An immutable sorted set that contains the current contents in the builder's set. + + + Represents an immutable sorted set implementation. + +NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the set. + + + Gets an empty immutable sorted set. + + + Adds the specified value to this immutable sorted set. + The value to add. + A new set with the element added, or this set if the element is already in this set. + + + Removes all elements from the immutable sorted set. + An empty set with the elements removed. + + + Determines whether this immutable sorted set contains the specified value. + The value to check for. + + if the set contains the specified value; otherwise, . + + + Removes a specified set of items from this immutable sorted set. + The items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the immutable sorted set. + An enumerator that can be used to iterate through the set. + + + Gets the position within this immutable sorted set that the specified value appears in. + The value whose position is being sought. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, this method returns a negative number that is the bitwise complement of the index of the first element that is larger than value. If is not found and is greater than any of the elements in the set, this method returns a negative number that is the bitwise complement of the index of the last element plus 1. + + + Creates an immutable sorted set that contains elements that exist both in this set and in the specified set. + The set to intersect with this one. + A new immutable sorted set that contains any elements that exist in both sets. + + + Determines whether the current immutable sorted set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a proper superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current immutable sorted set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference of the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference of the element at the given position. + + + Determines whether the current immutable sorted set and a specified collection share common elements. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the specified value from this immutable sorted set. + The element to remove. + A new immutable sorted set with the element removed, or this set if the element was not found in the set. + + + Returns an that iterates over this immutable sorted set in reverse order. + An enumerator that iterates over the immutable sorted set in reverse order. + + + Determines whether the current immutable sorted set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable sorted set that contains elements that exist either in this set or in a given sequence, but not both. + The other sequence of items. + The new immutable sorted set. + + + Adds the specified value to the collection. + The value to add. + + + Removes all the items from the collection. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the collection. + The object to remove from the collection. + + if was successfully removed from the collection; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Inserts an item in the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + + + Removes the item at the specified index. + The zero-based index of the item to remove. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Adds an item to the set. + The object to add to the set. + The set is read-only or has a fixed size. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the set. + Thrown in all cases. + + + Determines whether the set contains a specific value. + The object to locate in the set. + + if the object is found in the set; otherwise, . + + + Determines the index of a specific item in the set. + The object to locate in the set. + The index of if found in the list; otherwise, -1. + + + Inserts an item into the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + The set is read-only or has a fixed size. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + The set is read-only or has a fixed size. + + + Removes the item at the specified index of the set. + The zero-based index of the item to remove. + The set is read-only or has a fixed size. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Removes the elements in the specified collection from the current immutable set. + The items to remove from this set. + The new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates a collection that has the same contents as this immutable sorted set that can be efficiently manipulated by using standard mutable interfaces. + The sorted set builder. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Adds a given set of items to this immutable sorted set. + The items to add. + The new set with the items added; or the original set if all the items were already in the set. + + + Returns the immutable sorted set that has the specified key comparer. + The comparer to check for. + The immutable sorted set that has the specified key comparer. + + + Gets the number of elements in the immutable sorted set. + The number of elements in the immutable sorted set. + + + Gets a value that indicates whether this immutable sorted set is empty. + + if this set is empty; otherwise, . + + + Gets the element of the immutable sorted set at the given index. + The index of the element to retrieve from the sorted set. + The element at the given index. + + + Gets the comparer used to sort keys in the immutable sorted set. + The comparer used to sort keys. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Returns true, since immutable collections are always read-only. See the interface. + A boolean value indicating whether the collection is read-only. + + + See the interface. + The zero-based index of the item to access. + The element stored at the specified index. + + + Returns true, since immutable collections are always thread-safe. See the interface. + A boolean value indicating whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + + The . + + + Represents a sorted set that enables changes with little or no memory allocations, and efficiently manipulates or builds immutable sorted sets. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements from this set. + + + Determines whether the set contains the specified object. + The object to locate in the set. + + if is found in the set; otherwise, . + + + Removes the specified set of items from the current set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the set. + A enumerator that can be used to iterate through the set. + + + Searches for the first index within this set that the specified value is contained. + The value to locate within the set. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, returns a negative number that is the bitwise complement of the index of the first element that's larger than . If is not found and is greater than any of the elements in the set, returns a negative number that is the bitwise complement of (the index of the last element plus 1). + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection is compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference to the element at the given position. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of the specified object from the set. + The object to remove from the set. + + if was removed from the set; if was not found in the set. + + + Returns an enumerator that iterates over the immutable sorted set in reverse order. + An enumerator that iterates over the set in reverse order. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Creates an immutable sorted set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current state. + + + Gets the number of elements in the immutable sorted set. + The number of elements in this set. + + + Gets the element of the set at the given index. + The 0-based index of the element in the set to return. + The element at the given position. + + + Gets or sets the object that is used to determine equality for the values in the immutable sorted set. + The comparer that is used to determine equality for the values in the set. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread-safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Advances the enumerator to the next element of the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted set. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Gets the element at the current position of the enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable stack. + The type of items to be stored in the immutable stack. + An empty immutable stack. + + + Creates a new immutable stack that contains the specified item. + The item to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable collection that contains the specified item. + + + Creates a new immutable stack that contains the specified array of items. + An array that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified array of items. + A span that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified items. + The items to add to the stack before it's immutable. + The type of items in the stack. + An immutable stack that contains the specified items. + + + Removes the specified item from an immutable stack. + The stack to modify. + The item to remove from the stack. + The type of items contained in the stack. + The stack is empty. + A stack; never . + + + Represents an immutable stack. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element on the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns an enumerator that iterates through the immutable stack. + An enumerator that can be used to iterate through the stack. + + + Returns the object at the top of the stack without removing it. + The stack is empty. + The object at the top of the stack. + + + Gets a read-only reference to the element on the top of the stack. + The stack is empty. + A read-only reference to the element on the top of the stack. + + + Removes the element at the top of the immutable stack and returns the stack after the removal. + The stack is empty. + A stack; never . + + + Removes the specified element from the immutable stack and returns the stack after the removal. + The value to remove from the stack. + A stack; never . + + + Inserts an object at the top of the immutable stack and returns the new stack. + The object to push onto the stack. + The new stack. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable stack. + The empty immutable stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets an empty immutable stack. + An empty immutable stack. + + + Gets a value that indicates whether this instance of the immutable stack is empty. + + if this instance is empty; otherwise, . + + + Enumerates the contents of an immutable stack without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable stack. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the stack. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + LINQ extension method overrides that offer greater efficiency for than the standard LINQ methods + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + A function to be invoked on each element, in a cumulative way. + The type of element contained by the collection. + The final value after the cumulative function has been applied to all elements. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + The type of the accumulated value. + The type of element contained by the collection. + The final accumulator value. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + A function to transform the final accumulator value into the result type. + The type of the accumulated value. + The type of result returned by the result selector. + The type of element contained by the collection. + The final accumulator value. + + + Gets a value indicating whether all elements in this array match a given condition. + The array to check for matches. + The predicate. + The type of element contained by the collection. + + if every element of the source sequence passes the test in the specified predicate; otherwise, . + + + Returns a value indicating whether this collection contains any elements. + The builder to check for matches. + The type of elements in the array. + + if the array builder contains any elements; otherwise, . + + + Gets a value indicating whether the array contains any elements. + The array to check for elements. + The type of element contained by the collection. + + if the array contains an elements; otherwise, . + + + Gets a value indicating whether the array contains any elements that match a specified condition. + The array to check for elements. + The delegate that defines the condition to match to an element. + The type of element contained by the collection. + + if an element matches the specified condition; otherwise, . + + + Returns the element at a specified index in the array. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index. + + + Returns the element at a specified index in a sequence or a default value if the index is out of range. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index, or the default value if the index is not found. + + + Returns the first element in the collection. + The builder to retrieve an item from. + The type of items in the array. + If the array is empty. + The first item in the list. + + + Returns the first element in an array. + The array to get an item from. + The type of element contained by the collection. + If the array is empty. + The first item in the array. + + + Returns the first element in a sequence that satisfies a specified condition. + The array to get an item from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + If the array is empty. + The first item in the list if it meets the condition specified by . + + + Returns the first element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of the sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve elements from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the last element in the collection. + The builder to retrieve elements from. + The type of item in the builder. + The collection is empty. + The last element in the builder. + + + Returns the last element of the array. + The array to retrieve items from. + The type of element contained by the array. + The collection is empty. + The last element in the array. + + + Returns the last element of a sequence that satisfies a specified condition. + The array to retrieve elements from. + The delegate that defines the conditions of the element to retrieve. + The type of element contained by the collection. + The collection is empty. + The last element of the array that satisfies the condition. + + + Returns the last element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve an element from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Projects each element of a sequence into a new form. + The immutable array to select items from. + A transform function to apply to each element. + The type of element contained by the collection. + The type of the result element. + An whose elements are the result of invoking the transform function on each element of source. + + + Projects each element of a sequence to an , flattens the resulting sequences into one sequence, and invokes a result selector function on each element therein. + The immutable array. + A transform function to apply to each element of the input sequence. + A transform function to apply to each element of the intermediate sequence. + The type of the elements of . + The type of the intermediate elements collected by . + The type of the elements of the resulting sequence. + An whose elements are the result of invoking the one-to-many transform function on each element of and then mapping each of those sequence elements and their corresponding source element to a result element. + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence. + The array to retrieve the element from. + The type of element contained by the collection. + The element in the sequence. + + + Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists. + The immutable array to return a single element from. + The function to test whether an element should be returned. + The type of element contained by the collection. + Returns . + + + Returns the only element of the array, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence. + The array. + The type of element contained by the collection. + + contains more than one element. + The element in the array, or the default value if the array is empty. + + + Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition. + The array to get the element from. + The condition the element must satisfy. + The type of element contained by the collection. + More than one element satisfies the condition in . + The element if it satisfies the specified condition; otherwise the default element. + + + Copies the contents of this array to a mutable array. + The immutable array to copy into a mutable one. + The type of element contained by the collection. + The newly instantiated array. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Filters a sequence of values based on a predicate. + The array to filter. + The condition to use for filtering the array content. + The type of element contained by the collection. + Returns that contains elements that meet the condition. + + + An unsafe class that provides a set of methods to access the underlying data representations of immutable collections. + + + Gets the underlying array for an input value. + The input value to get the underlying array from. + The type of elements in the input value. + The underlying array for , if present. + + + Gets an value wrapping the input array. + The input array to wrap in the returned value. + The type of elements in the input array. + An value wrapping . + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/System.Diagnostics.DiagnosticSource.dll b/db_lab/bin/Debug/System.Diagnostics.DiagnosticSource.dll new file mode 100644 index 0000000..354f5f5 Binary files /dev/null and b/db_lab/bin/Debug/System.Diagnostics.DiagnosticSource.dll differ diff --git a/db_lab/bin/Debug/System.Diagnostics.DiagnosticSource.xml b/db_lab/bin/Debug/System.Diagnostics.DiagnosticSource.xml new file mode 100644 index 0000000..d94e6d2 --- /dev/null +++ b/db_lab/bin/Debug/System.Diagnostics.DiagnosticSource.xml @@ -0,0 +1,1886 @@ + + + + System.Diagnostics.DiagnosticSource + + + + Represents an operation with context to be used for logging. + + + Occurs when the value changes. + + + Initializes a new instance of the class. + The name of the operation. + + + Updates the to have a new baggage item with the specified key and value. + The baggage key. + The baggage value. + + for convenient chaining. + + + Adds the specified activity event to the events list. + The activity event to add. + + for convenient chaining. + + + Updates the activity to have a tag with an additional and . + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Updates the to have a new tag with the provided and . + The tag key. + The tag value. + + for convenient chaining. + + + Stops the activity if it is already started and notifies any event listeners. Nothing will happen otherwise. + + + When overriden by a derived type, this method releases any allocated resources. + + if the method is being called from the finalizer; if calling from user code. + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the tags attached to this Activity object. + + . + + + Returns the value of a key-value pair added to the activity with . + The baggage key. + The value of the key-value-pair item if it exists, or if it does not exist. + + + Returns the object mapped to the specified property name. + The name associated to the object. + The object mapped to the property name, if one is found; otherwise, . + + + Returns the value of the Activity tag mapped to the input key/>. + Returns if that key does not exist. + The tag key string. + The tag value mapped to the input key. + + + Add or update the Activity baggage with the input key and value. + If the input value is - if the collection has any baggage with the same key, then this baggage will get removed from the collection. + - otherwise, nothing will happen and the collection will not change. + If the input value is not - if the collection has any baggage with the same key, then the value mapped to this key will get updated with the new input value. + - otherwise, the key and value will get added as a new baggage to the collection. + Baggage item will be updated/removed only if it was originaly added to the current activity. Items inherited from the parents will not be changed/removed, new item would be added to current activity baggage instead. + The baggage key name + The baggage value mapped to the input key + + for convenient chaining. + + + Attaches any custom object to this activity. If the specified was previously associated with another object, the property will be updated to be associated with the new instead. It is recommended to use a unique property name to avoid conflicts with anyone using the same value. + The name to associate the value with. + The object to attach and map to the property name. + + + Updates the to set its as the difference between and the specified stop time. + The UTC stop time. + + for convenient chaining. + + + Sets the ID format on this before it is started. + One of the enumeration values that specifies the format of the property. + + for convenient chaining. + + + Sets the parent ID using the W3C convention of a TraceId and a SpanId. + The parent activity's TraceId. + The parent activity's SpanId. + One of the enumeration values that specifies flags defined by the W3C standard that are associated with an activity. + + for convenient chaining. + + + Updates this to indicate that the with an ID of caused this . + The ID of the parent operation. + + for convenient chaining. + + + Sets the start time of this . + The start time in UTC. + + for convenient chaining. + + + Sets the status code and description on the current activity object. + The status code + The error status description + + for convenient chaining. + + + Adds or update the activity tag with the input key and value. + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Starts the activity. + + for convenient chaining. + + + Stops the activity. + + + Gets or sets the flags (defined by the W3C ID specification) associated with the activity. + the flags associated with the activity. + + + Gets a collection of key/value pairs that represents information that is passed to children of this . + Information that's passed to children of this . + + + Gets the context of the activity. Context becomes valid only if the activity has been started. + The context of the activity, if the activity has been started; otherwise, returns the default context. + + + Gets or sets the current operation () for the current thread. This flows across async calls. + The current operation for the current thread. + + + Gets or sets the default ID format for the . + + + Gets or sets the display name of the activity. + A string that represents the activity display name. + + + Gets the duration of the operation. + The delta between and the end time if the has ended ( or was called), or if the has not ended and was not called. + + + Gets the list of all the activity events attached to this activity. + An enumeration of activity events attached to this activity. If the activity has no events, returns an empty enumeration. + + + Gets or sets a value that detrmines if the is always used to define the default ID format. + + to always use the ; otherwise, . + + + Gets a value that indicates whether the parent context was created from remote propagation. + + + Gets an identifier that is specific to a particular request. + The activity ID. + + + Gets the format for the . + The format for the . + + + Gets or sets a value that indicates whether this activity should be populated with all the propagation information, as well as all the other properties, such as links, tags, and events. + + if the activity should be populated; otherwise. + + + Gets a value that indicates whether this object is stopped or not. + + + Gets the relationship between the activity, its parents, and its children in a trace. + One of the enumeration values that indicate relationship between the activity, its parents, and its children in a trace. + + + Gets the list of all the activity links attached to this activity. + An enumeration of activity links attached to this activity. If the activity has no links, returns an empty enumeration. + + + Gets the operation name. + The name of the operation. + + + Gets the parent that created this activity. + The parent of this , if it is from the same process, or if this instance has no parent (it is a root activity) or if the parent is from outside the process. + + + Gets the ID of this activity's parent. + The parent ID, if one exists, or if it does not. + + + Gets the parent's . + The parent's . + + + Gets a value that indicates whether the W3CIdFlags.Recorded flag is set. + + if the W3CIdFlags.Recorded flag is set; otherwise, . + + + Gets the root ID of this . + The root ID, or if the current instance has either a or an . + + + Gets the activity source associated with this activity. + + + Gets the SPAN part of the . + The ID for the SPAN part of , if the has the W3C format; otherwise, a zero . + + + Gets the time when the operation started. + The UTC time that the operation started. + + + Gets status code of the current activity object. + + + Gets the status description of the current activity object. + + + Gets the list of tags that represent information to log along with the activity. This information is not passed on to the children of this activity. + A key-value pair enumeration of tags and objects. + + + Gets a collection of key/value pairs that represent information that will be logged along with the to the logging system. + Information that will be logged along with the to the logging system. + + + Gets the TraceId part of the . + The ID for the TraceId part of the , if the ID has the W3C format; otherwise, a zero TraceId. + + + When starting an Activity which does not have a parent context, the Trace Id will automatically be generated using random numbers. + TraceIdGenerator can be used to override the runtime's default Trace Id generation algorithm. + + + Gets or sets the W3C header. + The W3C header. + + + Enumerates the data stored on an object. + Type being enumerated. + + + Returns an enumerator that iterates through the data stored on an Activity object. + + . + + + Advances the enumerator to the next element of the data. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Gets the element at the current position of the enumerator. + + + Provides data for the event. + + + Gets the object after the event. + + + Gets the object before the event. + + + A representation that conforms to the W3C TraceContext specification. It contains two identifiers: a TraceId and a SpanId, along with a set of common TraceFlags and system-specific TraceState values. + + + Construct a new activity context instance using the specified arguments. + A trace identifier. + A span identifier. + Contain details about the trace. + Carries system-specific configuration data. + Indicates if the context is propagated from a remote parent. + + + Indicates whether the current object is equal to another object of the same type. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Determines whether this instance and a specified object have the same value. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Parses a W3C trace context headers to an object. + The W3C trace parent header. + The trace state. + The trace parent is invalid. + The object created from the parsing operation. + + + Tries to parse the W3C trace context headers to the object. + The W3C trace parent header. + The W3C trace state. + + to propagate the context from the remote parent; otherwise, . + When this method returns, contains the object created from the parsing operation. + + if the operation succeeds; otherwise. + + + Tries to parse the W3C trace context headers to an object. + The W3C trace parent header. + The W3C trace state. + When this method returns , the object created from the parsing operation. + + if the parsing was successful; otherwise. + + + Indicates if the activity context was propagated from a remote parent. + + if it was propagated from a remote parent; otherwise. + + + The Id of the request as known by the caller. + The Span Id in the context. + + + The flags defined by the W3C standard along with the ID for the activity. + The context tracing flags. + + + The trace identifier. + The tracing identifier in the context. + + + Holds the W3C 'tracestate' header. + A string representing the W3C 'tracestate' header. + + + Encapsulates all the information that is sent to the activity listener, to make decisions about the creation of the activity instance, as well as its state. + +The possible generic type parameters are or . + The type of the property. Should be either or . + + + Gets the activity kind which the activity will be created with. + One of the enumeration values that represent an activity kind. + + + Gets the enumeration of activity links that the activity will be created with. + An enumeration of activity links. + + + Gets the name to use as OperationName of the activity that will get created. + A string representing the activity name. + + + Gets the parent context or parent Id that the activity will get created with. + The parent of the activity, represented either as a or as an . + + + Gets the collection that is used to add more tags during the sampling process. The added tags are also added to the created Activity if it is decided that it should be created by the callbacks. + The Activity tags collection. + + + Gets the activity source that creates the activity. + An activity source object. + + + Gets the tags that the activity will be created with. + A key-value pair enumeration of tags associated with the activity. + + + Gets the trace Id to use in the Activity object if it is decided that it should be created by callbacks. + The trace Id. + + + Gets or initializes the trace state to use when creating the Activity. + + + Represents an event containing a name and a timestamp, as well as an optional list of tags. + + + Initializes a new activity event instance using the specified name and the current time as the event timestamp. + The event name. + + + Initializes a new activity event instance using the specified name, timestamp and tags. + The event name. + The event timestamp. Timestamp must only be used for the events that happened in the past, not at the moment of this call. + The event tags. + + + Enumerate the tags attached to this object. + + . + + + Gets the activity event name. + A string representing the activity event name. + + + Gets the collection of tags associated with the event. + A key-value pair enumeration containing the tags associated with the event. + + + Gets the activity event timestamp. + A datetime offset representing the activity event timestamp. + + + Specifies the format of the property. + + + The hierarchical format. + + + An unknown format. + + + The W3C format. + + + Describes the relationship between the activity, its parents and its children in a trace. + + + Outgoing request to the external component. + + + Output received from an external component. + + + Internal operation within an application, as opposed to operations with remote parents or children. This is the default value. + + + Output provided to external components. + + + Requests incoming from external component. + + + Activities may be linked to zero or more activity context instances that are causally related. + +Activity links can point to activity contexts inside a single trace or across different traces. + +Activity links can be used to represent batched operations where an activity was initiated by multiple initiating activities, each representing a single incoming item being processed in the batch. + + + Constructs a new activity link, which can be linked to an activity. + The trace activity context. + The key-value pair list of tags associated to the activity context. + + + Enumerate the tags attached to this object. + + . + + + Indicates whether the current activity link is equal to another activity link. + The activity link to compare. + + if the current activity link is equal to ; otherwise, . + + + Indicates whether the current activity link is equal to another object. + The object to compare. + + if the current activity link is equal to ; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Retrieves the activity context inside this activity link. + + + Retrieves the key-value pair enumeration of tags attached to the activity context. + An enumeration of tags attached to the activity context. + + + Allows listening to the start and stop activity events and gives the opportunity to decide creating an activity for sampling scenarios. + + + Construct a new activity listener object to start listeneing to the activity events. + + + Unregisters this activity listener object from listening to activity events. + + + Gets or sets the callback used to listen to the activity start event. + An activity callback instance used to listen to the activity start event. + + + Gets or sets the callback used to listen to the activity stop event. + An activity callback instance used to listen to the activity stop event. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that allows deciding if activity object events that were created using the activity source object should be listened or not. + + to listen events; otherwise. + + + Enumeration values used by to indicate the amount of data to collect for the related . Requesting more data causes a greater performance overhead. + + + The activity object should be populated with all the propagation information and also all other properties such as Links, Tags, and Events. Using this value causes to return . + + + The activity object should be populated the same as the case. Additionally, Activity.Recorded is set to . For activities using the W3C trace ids, this sets a flag bit in the ID that will be propagated downstream requesting that the trace is recorded everywhere. + + + The activity object does not need to be created. + + + The activity object needs to be created. It will have a Name, a Source, an Id and Baggage. Other properties are unnecessary and will be ignored by this listener. + + + Provides APIs to create and start objects and to register objects to listen to the events. + + + Constructs an activity source object with the specified . + The name of the activity source object. + The version of the component publishing the tracing info. + + + Adds a listener to the activity starting and stopping events. + The activity listener object to use for listening to the activity events. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity + The + The created object or if there is no any event listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + If the Activity object is created, it will not automatically start. Callers will need to call to start it. + The operation name of the Activity. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity. + The + The parent Id to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Disposes the activity source object, removes the current instance from the global list, and empties the listeners list. + + + Checks if there are any listeners for this activity source. + + if there is a listener registered for this activity source; otherwise, . + + + Creates and starts a new object if there is any listener to the Activity events, returns otherwise. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The optional start timestamp to set on the created Activity object. + The operation name of the Activity. + The created object or if there is no any listener. + + + Creates a new activity if there are active listeners for it, using the specified name and activity kind. + The operation name of the activity. + The activity kind. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent activity context, tags, optional activity link and optional start time. + The operation name of the activity. + The activity kind. + The parent object to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent Id, tags, optional activity links and optional start time. + The operation name of the activity. + The activity kind. + The parent Id to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Returns the activity source name. + A string that represents the activity source name. + + + Returns the activity source version. + A string that represents the activity source version. + + + Represents a formatted based on a W3C standard. + + + Copies the 8 bytes of the current to a specified span. + The span to which the 8 bytes of the SpanID are to be copied. + + + Creates a new value from a read-only span of eight bytes. + A read-only span of eight bytes. + + does not contain eight bytes. + The new span ID. + + + Creates a new value from a read-only span of 16 hexadecimal characters. + A span that contains 16 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new span ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new span ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new span ID. + + + Determines whether this instance and the specified instance have the same value. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + the current instance and a specified object, which also must be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the SpanId. + The hash code of the SpanId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the SpanId of is the same as the SpanId of ; otherwise, . + + + Determine whether two specified instances have unequal values. + The first instance to compare. + The second instance to compare. + + if the SpanId of is different from the SpanId of ; otherwise, . + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Define the status code of the Activity which indicate the status of the instrumented operation. + + + Status code indicating an error is encountered during the operation. + + + Status code indicating the operation has been validated and completed successfully. + + + Unset status code is the default value indicating the status code is not initialized. + + + ActivityTagsCollection is a collection class used to store tracing tags. + +This collection will be used with classes like and . + +This collection behaves as follows: +- The collection items will be ordered according to how they are added. +- Don't allow duplication of items with the same key. +- When using the indexer to store an item in the collection: + - If the item has a key that previously existed in the collection and the value is , the collection item matching the key will be removed from the collection. + - If the item has a key that previously existed in the collection and the value is not , the new item value will replace the old value stored in the collection. + - Otherwise, the item will be added to the collection. +- Add method will add a new item to the collection if an item doesn't already exist with the same key. Otherwise, it will throw an exception. + + + Create a new instance of the collection. + + + Create a new instance of the collection and store the input list items in the collection. + Initial list to store in the collection. + + + Adds an item to the collection. + Key and value pair of the tag to add to the collection. + + already exists in the list. + + is . + + + Adds a tag with the provided key and value to the collection. This collection doesn't allow adding two tags with the same key. + The tag key. + The tag value. + + + Removes all items from the collection. + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Determines whether the collection contains an element with the specified key. + The key to locate in the . + + if the collection contains tag with that key. otherwise. + + + Copies the elements of the collection to an array, starting at a particular array index. + The array that is the destination of the elements copied from collection. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator for the . + + + Removes the first occurrence of a specific item from the collection. + The tag key value pair to remove. + + if item was successfully removed from the collection; otherwise, . This method also returns if item is not found in the original collection. + + + Removes the tag with the specified key from the collection. + The tag key. + + if the item existed and removed. otherwise. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through the collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The tag key. + The tag value. + When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized. + + + Gets the number of elements contained in the collection. + The number of elements contained in the . + + + Gets a value indicating whether the collection is read-only. This always returns . + Always returns . + + + Gets or sets a specified collection item. + + When setting a value to this indexer property, the following behavior is observed: +- If the key previously existed in the collection and the value is , the collection item matching the key will get removed from the collection. +- If the key previously existed in the collection and the value is not , the value will replace the old value stored in the collection. +- Otherwise, a new item will get added to the collection. + The key of the value to get or set. + The object mapped to the key. + + + Get the list of the keys of all stored tags. + An containing the keys of the object that implements . + + + Get the list of the values of all stored tags. + An containing the values in the object that implements . + + + Enumerates the elements of an . + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Specifies flags defined by the W3C standard that are associated with an activity. + + + The activity has not been marked. + + + The activity (or more likely its parents) has been marked as useful to record. + + + Represents a whose format is based on a W3C standard. + + + Copies the 16 bytes of the current to a specified span. + The span to which the 16 bytes of the trace ID are to be copied. + + + Creates a new value from a read-only span of 16 bytes. + A read-only span of 16 bytes. + + does not contain eight bytes. + The new trace ID. + + + Creates a new value from a read-only span of 32 hexadecimal characters. + A span that contains 32 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new trace ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new trace ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new . + + + Determines whether the current instance and a specified are equal. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + Determines whether this instance and a specified object, which must also be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the TraceId. + The hash code of the TraceId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is the same as the TraceId of ; otherwise, . + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is different from the TraceId of ; otherwise, . + + + Returns a 32-character hexadecimal string that represents this span ID. + The 32-character hexadecimal string representation of this trace ID. + + + Returns a 32-character hexadecimal string that represents this trace ID. + The 32-character hexadecimal string representation of this trace ID. + + + Provides an implementation of the abstract class that represents a named place to which a source sends its information (events). + + + Creates a new . + The name of this . + + + Disposes the NotificationListeners. + + + Determines whether there are any registered subscribers. + + if there are any registered subscribers, otherwise. + + + Checks whether the is enabled. + The name of the event to check. + + if notifications are enabled; otherwise, . + + + Checks if any subscriber to the diagnostic events is interested in receiving events with this name. Subscribers indicate their interest using a delegate provided in . + The name of the event to check. + The object that represents a context. + The object that represents a context. + + if it is enabled, otherwise. + + + Invokes the OnActivityExport method of all the subscribers. + The activity affected by an external event. + An object that represents the outgoing request. + + + Invokes the OnActivityImport method of all the subscribers. + The activity affected by an external event. + An object that represents the incoming request. + + + Adds a subscriber. + A subscriber. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name and up to two context objects. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or to if an event filter is not desirable. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, optionally filters events based on their name and up to two context objects, and specifies methods to call when providers import or export activites from outside the process. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or if an event filter is not desirable. + An action delegate that receives the activity affected by an external event and an object that represents the incoming request. + An action delegate that receives the activity affected by an external event and an object that represents the outgoing request. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name. + A subscriber. + A delegate that filters events based on their name (). The delegate should return if the event is enabled. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Returns a string with the name of this DiagnosticListener. + The name of this DiagnosticListener. + + + Logs a notification. + The name of the event to log. + An object that represents the payload for the event. + + + Gets the collection of listeners for this . + + + Gets the name of this . + The name of the . + + + An abstract class that allows code to be instrumented for production-time logging of rich data payloads for consumption within the process that was instrumented. + + + Initializes an instance of the class. + + + Verifies if the notification event is enabled. + The name of the event being written. + + if the notification event is enabled, otherwise. + + + Verifies it the notification event is enabled. + The name of the event being written. + An object that represents the additional context for IsEnabled. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) to check if consumer wants to get notifications for such events at all. Based on that, producer may call IsEnabled(string, object, object) again with non- context. + Optional. An object that represents the additional context for IsEnabled. by default. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) or producer passed all necessary context in . + + if the notification event is enabled, otherwise. + + + Transfers state from an activity to some event or operation, such as an outgoing HTTP request, that will occur outside the process. + The activity affected by an external event. + An object that represents the outgoing request. + + + Transfers state to an activity from some event or operation, such as an incoming request, that occurred outside the process. + The activity affected by an external event. + A payload that represents the incoming request. + + + Starts an and writes a start event. + The to be started. + An object that represent the value being passed as a payload for the event. + The started activity for convenient chaining. + + + + + + + + Stops the given , maintains the global activity, and notifies consumers that the was stopped. + The activity to be stopped. + An object that represents the value passed as a payload for the event. + + + + + + + + Provides a generic way of logging complex payloads. + The name of the event being written. + An object that represents the value being passed as a payload for the event. This is often an anonymous type which contains several sub-values. + + + + + + + + An implementation of determines if and how distributed context information is encoded and decoded as it traverses the network. + The encoding can be transported over any network protocol that supports string key-value pairs. For example, when using HTTP, each key-value pair is an HTTP header. + injects values into and extracts values from carriers as string key-value pairs. + + + Initializes an instance of the class. This constructor is protected and only meant to be called from parent classes. + + + Returns the default propagator object that will be initialized with. + An instance of the class. + + + Returns a propagator that does not transmit any distributed context information in outbound network messages. + An instance of the class. + + + Returns a propagator that attempts to act transparently, emitting the same data on outbound network requests that was received on the inbound request. + When encoding the outbound message, this propagator uses information from the request's root Activity, ignoring any intermediate Activities that may have been created while processing the request. + An instance of the class. + + + Extracts the baggage key-value pair list from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation baggage list from the carrier. + Returns the extracted key-value pair list from the carrier. + + + Extracts the trace ID and trace state from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation trace ID and state from the carrier. + When this method returns, contains the trace ID extracted from the carrier. + When this method returns, contains the trace state extracted from the carrier. + + + Injects the trace values stored in the object into a carrier. For example, into the headers of an HTTP request. + The Activity object has the distributed context to inject to the carrier. + The medium in which the distributed context will be stored. + The callback method to invoke to set a named key-value pair on the carrier. + + + Get or set the process-wide propagator object to use as the current selected propagator. + The currently selected process-wide propagator object. + + + Gets the set of field names this propagator is likely to read or write. + The list of fields that will be used by the DistributedContextPropagator. + + + Represents the callback method that's used in the extract methods of propagators. The callback is invoked to look up the value of a named field. + The medium used by propagators to read values from. + The propagation field name. + When this method returns, contains the value that corresponds to . The value is non- if there is only one value for the input field name. + When this method returns, contains a collection of values that correspond to . The value is non- if there is more than one value for the input field name. + + + Represents the callback method that's used in propagators' inject methods. This callback is invoked to set the value of a named field. + Propagators may invoke it multiple times in order to set multiple fields. + The medium used by propagators to write values to. + The propagation field name. + The value corresponding to . + + + Represents an instrument that supports adding non-negative values. For example, you might call counter.Add(1) each time a request is processed to track the total number of requests. Most metric viewers display counters using a rate (requests/sec), by default, but can also display a cumulative total. + The type that the counter represents. + + + Records the increment value of the measurement. + The increment measurement. + + + Records the increment value of the measurement. + The increment measurement. + A key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A list of key-value pair tags associated with the measurement. + + + Adds the increment value of the measurement. + The measurement value. + The tags associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A span of key-value pair tags associated with the measurement. + + + Represents a metrics instrument that can be used to report arbitrary values that are likely to be statistically meaningful, for example, the request duration. Call to create a Histogram object. + The type that the histogram represents. + + + Records a measurement value. + The measurement value. + + + Records a measurement value. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A list of key-value pair tags associated with the measurement. + + + Records a measurement value. + The measurement value. + The tags associated with the measurement. + + + Records a measurement value. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + + + + + Base class of all metrics instrument classes + + + Protected constructor to initialize the common instrument properties like the meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Activates the instrument to start recording measurements and to allow listeners to start listening to such measurements. + + + Gets the instrument description. + + + Gets a value that indicates if there are any listeners for this instrument. + + + Gets a value that indicates whether the instrument is an observable instrument. + + + Gets the Meter that created the instrument. + + + Gets the instrument name. + + + + Gets the instrument unit of measurements. + + + The base class for all non-observable instruments. + The type that the instrument represents. + + + Create the metrics instrument using the properties meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + The tags associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + Stores one observed metrics value and its associated tags. This type is used by an Observable instrument's Observe() method when reporting current measurements. + The type that the measurement represents. + + + Initializes a new instance of using the specified value. + The measurement value. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Gets the measurement tags list. + + + Gets the measurement value. + + + A delegate to represent the Meterlistener callbacks that are used when recording measurements. + The instrument that sent the measurement. + The measurement value. + A span of key-value pair tags associated with the measurement. + The state object originally passed to method. + The type that the measurement represents. + + + Meter is the class responsible for creating and tracking the Instruments. + + + + + + Initializes a new instance of using the specified meter name. + The Meter name. + + + Initializes a new instance of using the specified meter name and version. + The Meter name. + The optional Meter version. + + + + + + + + + Create a metrics Counter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new counter. + + + + + + + + + + Creates a Histogram, which is an instrument that can be used to report arbitrary values that are likely to be statistically meaningful. It is intended for statistics such as histograms, summaries, and percentiles. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new histogram. + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement.. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Create a metrics UpDownCounter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new up down counter. + + + + + + + + + + Dispose the Meter which will disable all instruments created by this meter. + + + + + + Gets the Meter name. + The Meter name + + + + + Gets the Meter version. + The Meter version. + + + + + + + + + + The MeterListener is class used to listen to the metrics instrument measurements recording. + + + Initializes a new instance of the class. + + + Stops listening to a specific instrument measurement recording. + The instrument to stop listening to. + The state object originally passed to method. + + + Disposes the listeners which will stop it from listening to any instrument. + + + Starts listening to a specific instrument measurement recording. + The instrument to listen to. + A state object that will be passed back to the callback getting measurements events. + + + Calls all Observable instruments that the listener is listening to, and calls with every collected measurement. + + + Sets a callback for a specific numeric type to get the measurement recording notification from all instruments which enabled listening and was created with the same specified numeric type. + If a measurement of type T is recorded and a callback of type T is registered, that callback will be used. + The callback which can be used to get measurement recording of numeric type T. + The type of the numeric measurement. + + + Enables the listener to start listening to instruments measurement recording. + + + Gets or sets the callback to get notified when an instrument is published. + The callback to get notified when an instrument is published. + + + Gets or sets the callback to get notified when the measurement is stopped on some instrument. + This can happen when the Meter or the Listener is disposed or calling on the listener. + The callback to get notified when the measurement is stopped on some instrument. + + + + + + + + + + + Represents a metrics-observable instrument that reports monotonically increasing values when the instrument is being observed, for example, CPU time (for different processes, threads, user mode, or kernel mode). Call to create the observable counter object. + The type that the observable counter represents. + + + Represents an observable instrument that reports non-additive values when the instrument is being observed, for example, the current room temperature. Call to create the observable counter object. + + + + ObservableInstrument{T} is the base class from which all metrics observable instruments will inherit. + The type that the observable instrument represents. + + + Initializes a new instance of the class using the specified meter, name, description, and unit. + All classes that extend ObservableInstrument{T} must call this constructor when constructing objects of the extended class. + The meter that created the instrument. + The instrument name. cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Fetches the current measurements being tracked by this instrument. All classes extending ObservableInstrument{T} need to implement this method. + The current measurements tracked by this instrument. + + + Gets a value that indicates if the instrument is an observable instrument. + + if the instrument is metrics-observable; otherwise. + + + A metrics-observable instrument that reports increasing or decreasing values when the instrument is being observed. +Use this instrument to monitor the process heap size or the approximate number of items in a lock-free circular buffer, for example. +To create an ObservableUpDownCounter object, use the methods. + The type that the counter represents. + + + An instrument that supports reporting positive or negative metric values. + UpDownCounter may be used in scenarios like reporting the change in active requests or queue size. + The type that the UpDownCounter represents. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A list of key-value pair tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A of tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A span of key-value pair tags associated with the measurement. + + + A delegate that defines the signature of the callbacks used in the sampling process. + The Activity creation options used by callbacks to decide creating the Activity object or not. + The type of the requested parent to create the Activity object with. Should be either a string or an instance. + An object containing the sampling results, which indicate the amount of data to collect for the related . + + + Represents a list of tags that can be accessed by index. Provides methods to search, sort, and manipulate lists. + + + Initializes a new instance of using the specified . + A span of tags to initialize the list with. + + + Adds a tag to the list. + The key-value pair of the tag to add to the list. + + + Adds a tag with the specified and to the list. + The tag key. + The tag value. + + + Removes all elements from the . + + + Determines whether a tag is in the . + The tag to locate in the . + + if item is found in the ; otherwise, . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional Array that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0 or greater than or equal to the length. + + + Copies the contents of this into a destination span. + The destination object. + + The number of elements in the source is greater than the number of elements that the destination span. + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Searches for the specified tag and returns the zero-based index of the first occurrence within the entire . + The tag to locate in the . + The zero-based index of the first ocurrence of in the tag list. + + + Inserts an element into the at the specified index. + The zero-based index at which the item should be inserted. + The tag to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific object from the . + The tag to remove from the . + + if is successfully removed; otherwise, . This method also returns if was not found in the . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + index is less than 0 or is greater than . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Gets the number of tags contained in the . + The number of elements contained in the . + + + Gets a value indicating whether the is read-only. This property will always return . + + Always returns . + + + Gets or sets the tags at the specified index. + The item index. + + is not a valid index in the . + The element at the specified index. + + + An enumerator for traversing a tag list collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/System.Memory.dll b/db_lab/bin/Debug/System.Memory.dll new file mode 100644 index 0000000..4617199 Binary files /dev/null and b/db_lab/bin/Debug/System.Memory.dll differ diff --git a/db_lab/bin/Debug/System.Memory.xml b/db_lab/bin/Debug/System.Memory.xml new file mode 100644 index 0000000..4d12fd7 --- /dev/null +++ b/db_lab/bin/Debug/System.Memory.xml @@ -0,0 +1,355 @@ + + + System.Memory + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/System.Numerics.Vectors.dll b/db_lab/bin/Debug/System.Numerics.Vectors.dll new file mode 100644 index 0000000..0865972 Binary files /dev/null and b/db_lab/bin/Debug/System.Numerics.Vectors.dll differ diff --git a/db_lab/bin/Debug/System.Numerics.Vectors.xml b/db_lab/bin/Debug/System.Numerics.Vectors.xml new file mode 100644 index 0000000..da34d39 --- /dev/null +++ b/db_lab/bin/Debug/System.Numerics.Vectors.xml @@ -0,0 +1,2621 @@ + + + System.Numerics.Vectors + + + + Represents a 3x2 matrix. + + + Creates a 3x2 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a rotation matrix using the given rotation in radians. + The amount of rotation, in radians. + The rotation matrix. + + + Creates a rotation matrix using the specified rotation in radians and a center point. + The amount of rotation, in radians. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified X and Y components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the specified scale with an offset from the specified center. + The uniform scale to use. + The center offset. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The center point. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the given scale. + The uniform scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale with an offset from the specified center point. + The scale to use. + The center offset. + The scaling matrix. + + + Creates a skew matrix from the specified angles in radians. + The X angle, in radians. + The Y angle, in radians. + The skew matrix. + + + Creates a skew matrix from the specified angles in radians and a center point. + The X angle, in radians. + The Y angle, in radians. + The center point. + The skew matrix. + + + Creates a translation matrix from the specified 2-dimensional vector. + The translation position. + The translation matrix. + + + Creates a translation matrix from the specified X and Y components. + The X position. + The Y position. + The translation matrix. + + + Returns a value that indicates whether this instance and another 3x2 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant for this matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + The multiplicative identify matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Represents a 4x4 matrix. + + + Creates a object from a specified object. + A 3x2 matrix. + + + Creates a 4x4 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the third element in the first row. + The value to assign to the fourth element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the third element in the second row. + The value to assign to the third element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + The value to assign to the third element in the third row. + The value to assign to the fourth element in the third row. + The value to assign to the first element in the fourth row. + The value to assign to the second element in the fourth row. + The value to assign to the third element in the fourth row. + The value to assign to the fourth element in the fourth row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a spherical billboard that rotates around a specified object position. + The position of the object that the billboard will rotate around. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard. + + + Creates a cylindrical billboard that rotates around a specified axis. + The position of the object that the billboard will rotate around. + The position of the camera. + The axis to rotate the billboard around. + The forward vector of the camera. + The forward vector of the object. + The billboard matrix. + + + Creates a matrix that rotates around an arbitrary vector. + The axis to rotate around. + The angle to rotate around axis, in radians. + The rotation matrix. + + + Creates a rotation matrix from the specified Quaternion rotation value. + The source Quaternion. + The rotation matrix. + + + Creates a rotation matrix from the specified yaw, pitch, and roll. + The angle of rotation, in radians, around the Y axis. + The angle of rotation, in radians, around the X axis. + The angle of rotation, in radians, around the Z axis. + The rotation matrix. + + + Creates a view matrix. + The position of the camera. + The target towards which the camera is pointing. + The direction that is &quot;up&quot; from the camera&#39;s point of view. + The view matrix. + + + Creates an orthographic perspective matrix from the given view volume dimensions. + The width of the view volume. + The height of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a customized orthographic projection matrix. + The minimum X-value of the view volume. + The maximum X-value of the view volume. + The minimum Y-value of the view volume. + The maximum Y-value of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a perspective projection matrix from the given view volume dimensions. + The width of the view volume at the near view plane. + The height of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. + The field of view in the y direction, in radians. + The aspect ratio, defined as view space width divided by height. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + fieldOfView is less than or equal to zero. + -or- + fieldOfView is greater than or equal to . + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a customized perspective projection matrix. + The minimum x-value of the view volume at the near view plane. + The maximum x-value of the view volume at the near view plane. + The minimum y-value of the view volume at the near view plane. + The maximum y-value of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a matrix that reflects the coordinate system about a specified plane. + The plane about which to create a reflection. + A new matrix expressing the reflection. + + + Creates a matrix for rotating points around the X axis. + The amount, in radians, by which to rotate around the X axis. + The rotation matrix. + + + Creates a matrix for rotating points around the X axis from a center point. + The amount, in radians, by which to rotate around the X axis. + The center point. + The rotation matrix. + + + The amount, in radians, by which to rotate around the Y axis from a center point. + The amount, in radians, by which to rotate around the Y-axis. + The center point. + The rotation matrix. + + + Creates a matrix for rotating points around the Y axis. + The amount, in radians, by which to rotate around the Y-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis. + The amount, in radians, by which to rotate around the Z-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis from a center point. + The amount, in radians, by which to rotate around the Z-axis. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a uniform scaling matrix that scale equally on each axis. + The uniform scaling factor. + The scaling matrix. + + + Creates a scaling matrix with a center point. + The vector that contains the amount to scale on each axis. + The center point. + The scaling matrix. + + + Creates a uniform scaling matrix that scales equally on each axis with a center point. + The uniform scaling factor. + The center point. + The scaling matrix. + + + Creates a scaling matrix from the specified X, Y, and Z components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The center point. + The scaling matrix. + + + Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. + The direction from which the light that will cast the shadow is coming. + The plane onto which the new matrix should flatten geometry so as to cast a shadow. + A new matrix that can be used to flatten geometry onto the specified plane from the specified direction. + + + Creates a translation matrix from the specified 3-dimensional vector. + The amount to translate in each axis. + The translation matrix. + + + Creates a translation matrix from the specified X, Y, and Z components. + The amount to translate on the X axis. + The amount to translate on the Y axis. + The amount to translate on the Z axis. + The translation matrix. + + + Creates a world matrix with the specified parameters. + The position of the object. + The forward direction of the object. + The upward direction of the object. Its value is usually [0, 1, 0]. + The world matrix. + + + Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. + The source matrix. + When this method returns, contains the scaling component of the transformation matrix if the operation succeeded. + When this method returns, contains the rotation component of the transformation matrix if the operation succeeded. + When the method returns, contains the translation component of the transformation matrix if the operation succeeded. + true if matrix was decomposed successfully; otherwise, false. + + + Returns a value that indicates whether this instance and another 4x4 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant of the current 4x4 matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + Gets the multiplicative identity matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The third element of the first row. + + + + The fourth element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The third element of the second row. + + + + The fourth element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + The third element of the third row. + + + + The fourth element of the third row. + + + + The first element of the fourth row. + + + + The second element of the fourth row. + + + + The third element of the fourth row. + + + + The fourth element of the fourth row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to care + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Transforms the specified matrix by applying the specified Quaternion rotation. + The matrix to transform. + The rotation t apply. + The transformed matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Transposes the rows and columns of a matrix. + The matrix to transpose. + The transposed matrix. + + + Represents a three-dimensional plane. + + + Creates a object from a specified four-dimensional vector. + A vector whose first three elements describe the normal vector, and whose defines the distance along that normal from the origin. + + + Creates a object from a specified normal and the distance along the normal from the origin. + The plane&#39;s normal vector. + The plane&#39;s distance from the origin along its normal vector. + + + Creates a object from the X, Y, and Z components of its normal, and its distance from the origin on that normal. + The X component of the normal. + The Y component of the normal. + The Z component of the normal. + The distance of the plane along its normal from the origin. + + + Creates a object that contains three specified points. + The first point defining the plane. + The second point defining the plane. + The third point defining the plane. + The plane containing the three points. + + + The distance of the plane along its normal from the origin. + + + + Calculates the dot product of a plane and a 4-dimensional vector. + The plane. + The four-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the normal vector of this plane plus the distance () value of the plane. + The plane. + The 3-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the vector of this plane. + The plane. + The three-dimensional vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another plane object are equal. + The other plane. + true if the two planes are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + The normal vector of the plane. + + + + Creates a new object whose normal vector is the source plane&#39;s normal vector normalized. + The source plane. + The normalized plane. + + + Returns a value that indicates whether two planes are equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether two planes are not equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the string representation of this plane object. + A string that represents this object. + + + Transforms a normalized plane by a 4x4 matrix. + The normalized plane to transform. + The transformation matrix to apply to plane. + The transformed plane. + + + Transforms a normalized plane by a Quaternion rotation. + The normalized plane to transform. + The Quaternion rotation to apply to the plane. + A new plane that results from applying the Quaternion rotation. + + + Represents a vector that is used to encode three-dimensional physical rotations. + + + Creates a quaternion from the specified vector and rotation parts. + The vector part of the quaternion. + The rotation part of the quaternion. + + + Constructs a quaternion from the specified components. + The value to assign to the X component of the quaternion. + The value to assign to the Y component of the quaternion. + The value to assign to the Z component of the quaternion. + The value to assign to the W component of the quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Concatenates two quaternions. + The first quaternion rotation in the series. + The second quaternion rotation in the series. + A new quaternion representing the concatenation of the value1 rotation followed by the value2 rotation. + + + Returns the conjugate of a specified quaternion. + The quaternion. + A new quaternion that is the conjugate of value. + + + Creates a quaternion from a vector and an angle to rotate about the vector. + The vector to rotate around. + The angle, in radians, to rotate around the vector. + The newly created quaternion. + + + Creates a quaternion from the specified rotation matrix. + The rotation matrix. + The newly created quaternion. + + + Creates a new quaternion from the given yaw, pitch, and roll. + The yaw angle, in radians, around the Y axis. + The pitch angle, in radians, around the X axis. + The roll angle, in radians, around the Z axis. + The resulting quaternion. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Calculates the dot product of two quaternions. + The first quaternion. + The second quaternion. + The dot product. + + + Returns a value that indicates whether this instance and another quaternion are equal. + The other quaternion. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Gets a quaternion that represents no rotation. + A quaternion whose values are (0, 0, 0, 1). + + + Returns the inverse of a quaternion. + The quaternion. + The inverted quaternion. + + + Gets a value that indicates whether the current instance is the identity quaternion. + true if the current instance is the identity quaternion; otherwise, false. + + + Calculates the length of the quaternion. + The computed length of the quaternion. + + + Calculates the squared length of the quaternion. + The length squared of the quaternion. + + + Performs a linear interpolation between two quaternions based on a value that specifies the weighting of the second quaternion. + The first quaternion. + The second quaternion. + The relative weight of quaternion2 in the interpolation. + The interpolated quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Divides each component of a specified by its length. + The quaternion to normalize. + The normalized quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Returns a value that indicates whether two quaternions are equal. + The first quaternion to compare. + The second quaternion to compare. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether two quaternions are not equal. + The first quaternion to compare. + The second quaternion to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Interpolates between two quaternions, using spherical linear interpolation. + The first quaternion. + The second quaternion. + The relative weight of the second quaternion in the interpolation. + The interpolated quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this quaternion. + The string representation of this quaternion. + + + The rotation component of the quaternion. + + + + The X value of the vector component of the quaternion. + + + + The Y value of the vector component of the quaternion. + + + + The Z value of the vector component of the quaternion. + + + + Represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms. + The vector type. T can be any primitive numeric type. + + + Creates a vector whose components are of a specified type. + The numeric type that defines the type of the components in the vector. + + + Creates a vector from a specified array. + A numeric array. + values is null. + + + Creates a vector from a specified array starting at a specified index position. + A numeric array. + The starting index position from which to create the vector. + values is null. + index is less than zero. + -or- + The length of values minus index is less than . + + + Copies the vector instance to a specified destination array. + The array to receive a copy of the vector values. + destination is null. + The number of elements in the current vector is greater than the number of elements available in the destination array. + + + Copies the vector instance to a specified destination array starting at a specified index position. + The array to receive a copy of the vector values. + The starting index in destination at which to begin the copy operation. + destination is null. + The number of elements in the current instance is greater than the number of elements available from startIndex to the end of the destination array. + index is less than zero or greater than the last index in destination. + + + Returns the number of elements stored in the vector. + The number of elements stored in the vector. + Access to the property getter via reflection is not supported. + + + Returns a value that indicates whether this instance is equal to a specified vector. + The vector to compare with this instance. + true if the current instance and other are equal; otherwise, false. + + + Returns a value that indicates whether this instance is equal to a specified object. + The object to compare with this instance. + true if the current instance and obj are equal; otherwise, false. The method returns false if obj is null, or if obj is a vector of a different type than the current instance. + + + Returns the hash code for this instance. + The hash code. + + + Gets the element at a specified index. + The index of the element to return. + The element at index index. + index is less than zero. + -or- + index is greater than or equal to . + + + Returns a vector containing all ones. + A vector containing all ones. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Returns a new vector by performing a bitwise And operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise And of left and right. + + + Returns a new vector by performing a bitwise Or operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise Or of the elements in left and right. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Returns a value that indicates whether each pair of elements in two specified vectors are equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a new vector by performing a bitwise XOr operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise XOr of the elements in left and right. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Returns a value that indicates whether any single pair of elements in the specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if any element pairs in left and right are equal. false if no element pairs are equal. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar value. + The source vector. + A scalar value. + The scaled vector. + + + Multiplies a vector by the given scalar. + The scalar value. + The source vector. + The scaled vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The one&#39;s complement vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates a given vector. + The vector to negate. + The negated vector. + + + Returns the string representation of this vector using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Returns the string representation of this vector using default formatting. + The string representation of this vector. + + + Returns the string representation of this vector using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns a vector containing all zeroes. + A vector containing all zeroes. + + + Provides a collection of static convenience methods for creating, manipulating, combining, and converting generic vectors. + + + Returns a new vector whose elements are the absolute values of the given vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The absolute value vector. + + + Returns a new vector whose values are the sum of each pair of elements from two given vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The summed vector. + + + Returns a new vector by performing a bitwise And Not operation on each pair of corresponding elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a double-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of signed bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a single-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Returns a new vector by performing a bitwise And operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector by performing a bitwise Or operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Creates a new single-precision vector with elements selected between two specified single-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new double-precision vector with elements selected between two specified double-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new vector of a specified type with elements selected between two specified source vectors of the same type based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The vector type. T can be any primitive numeric type. + The new vector with elements selected based on the mask. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose values are the result of dividing the first vector&#39;s elements by the corresponding elements in the second vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The divided vector. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The dot product. + + + Returns a new integral vector whose elements signal whether the elements in two specified double-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified integral vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in two specified long integer vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified single-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in two specified vectors of the same type are equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether each pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left and right are equal; otherwise, false. + + + Returns a value that indicates whether any single pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element pair in left and right is equal; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are greater than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are greater than their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than their corresponding elements in the second vector of the same time. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the single-precision floating-point second vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than or equal to their corresponding elements in the second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than or equal to their corresponding elements in the second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than or equal to their corresponding elements in the second vector of the same type. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than or equal to all the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than or equal to the corresponding element in right; otherwise, false. + + + Gets a value that indicates whether vector operations are subject to hardware acceleration through JIT intrinsic support. + true if vector operations are subject to hardware acceleration; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision vector are less than their corresponding elements in a second single-precision vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in one vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all of the elements in the first vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than or equal to their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than or equal to their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less or equal to their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are less than or equal to their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than or equal to the corresponding element in right; otherwise, false. + + + Returns a new vector whose elements are the maximum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The maximum vector. + + + Returns a new vector whose elements are the minimum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The minimum vector. + + + Returns a new vector whose values are a scalar value multiplied by each of the values of a specified vector. + The scalar value. + The vector. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + Returns a new vector whose values are the product of each pair of elements in two specified vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The product vector. + + + Returns a new vector whose values are the values of a specified vector each multiplied by a scalar value. + The vector. + The scalar value. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose elements are the negation of the corresponding element in the specified vector. + The source vector. + The vector type. T can be any primitive numeric type. + The negated vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector whose elements are the square roots of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The square root vector. + + + Returns a new vector whose values are the difference between the elements in the second vector and their corresponding elements in the first vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The difference vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector by performing a bitwise exclusive Or (XOr) operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Represents a vector with two single-precision floating-point values. + + + Creates a new object whose two elements have the same value. + The value to assign to both elements. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of the vector. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 2 elements are equal to one. + A vector whose two elements are equal to one (that is, it returns the vector (1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 3x2 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 3x2 matrix. + The source vector. + The matrix. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0). + The vector (1,0). + + + Gets the vector (0,1). + The vector (0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + Returns a vector whose 2 elements are equal to zero. + A vector whose two elements are equal to zero (that is, it returns the vector (0,0). + + + Represents a vector with three single-precision floating-point values. + + + Creates a new object whose three elements have the same value. + The value to assign to all three elements. + + + Creates a new object from the specified object and the specified value. + The vector with two elements. + The additional value to assign to the field. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the cross product of two vectors. + The first vector. + The second vector. + The cross product. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 3 elements are equal to one. + A vector whose three elements are equal to one (that is, it returns the vector (1,1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0,0). + The vector (1,0,0). + + + Gets the vector (0,1,0). + The vector (0,1,0).. + + + Gets the vector (0,0,1). + The vector (0,0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 3 elements are equal to zero. + A vector whose three elements are equal to zero (that is, it returns the vector (0,0,0). + + + Represents a vector with four single-precision floating-point values. + + + Creates a new object whose four elements have the same value. + The value to assign to all four elements. + + + Constructs a new object from the specified object and a W component. + The vector to use for the X, Y, and Z components. + The W component. + + + Creates a new object from the specified object and a Z and a W component. + The vector to use for the X and Y components. + The Z component. + The W component. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 4 elements are equal to one. + Returns . + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a four-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a four-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a three-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a two-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a two-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a three-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Gets the vector (0,0,0,1). + The vector (0,0,0,1). + + + Gets the vector (1,0,0,0). + The vector (1,0,0,0). + + + Gets the vector (0,1,0,0). + The vector (0,1,0,0).. + + + Gets a vector whose 4 elements are equal to zero. + The vector (0,0,1,0). + + + The W component of the vector. + + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 4 elements are equal to zero. + A vector whose four elements are equal to zero (that is, it returns the vector (0,0,0,0). + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/System.Runtime.CompilerServices.Unsafe.dll b/db_lab/bin/Debug/System.Runtime.CompilerServices.Unsafe.dll new file mode 100644 index 0000000..c5ba4e4 Binary files /dev/null and b/db_lab/bin/Debug/System.Runtime.CompilerServices.Unsafe.dll differ diff --git a/db_lab/bin/Debug/System.Runtime.CompilerServices.Unsafe.xml b/db_lab/bin/Debug/System.Runtime.CompilerServices.Unsafe.xml new file mode 100644 index 0000000..9d79492 --- /dev/null +++ b/db_lab/bin/Debug/System.Runtime.CompilerServices.Unsafe.xml @@ -0,0 +1,291 @@ + + + + System.Runtime.CompilerServices.Unsafe + + + + Contains generic, low-level functionality for manipulating pointers. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given void pointer. + The void pointer to add the offset to. + The offset to add. + The type of void pointer. + A new void pointer that reflects the addition of offset to the specified pointer. + + + Adds a byte offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of byte offset to pointer. + + + Adds a byte offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of byte offset to pointer. + + + Determines whether the specified references point to the same location. + The first reference to compare. + The second reference to compare. + The type of reference. + + if and point to the same location; otherwise, . + + + Casts the given object to the specified type. + The object to cast. + The type which the object will be cast to. + The original object, casted to the given type. + + + Reinterprets the given reference as a reference to a value of type . + The reference to reinterpret. + The type of reference to reinterpret. + The desired type of the reference. + A reference to a value of type . + + + Returns a pointer to the given by-ref parameter. + The object whose pointer is obtained. + The type of object. + A pointer to the given value. + + + Reinterprets the given read-only reference as a reference. + The read-only reference to reinterpret. + The type of reference. + A reference to a value of type . + + + Reinterprets the given location as a reference to a value of type . + The location of the value to reference. + The type of the interpreted location. + A reference to a value of type . + + + Determines the byte offset from origin to target from the given references. + The reference to origin. + The reference to target. + The type of reference. + Byte offset from origin to target i.e. - . + + + Copies a value of type to the given location. + The location to copy to. + A pointer to the value to copy. + The type of value to copy. + + + Copies a value of type to the given location. + The location to copy to. + A reference to the value to copy. + The type of value to copy. + + + Copies bytes from the source address to the destination address. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Initializes a block of memory at the given location with a given initial value. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Returns a value that indicates whether a specified reference is greater than another specified reference. + The first value to compare. + The second value to compare. + The type of the reference. + + if is greater than ; otherwise, . + + + Returns a value that indicates whether a specified reference is less than another specified reference. + The first value to compare. + The second value to compare. + The type of the reference. + + if is less than ; otherwise, . + + + Determines if a given reference to a value of type is a null reference. + The reference to check. + The type of the reference. + + if is a null reference; otherwise, . + + + Returns a reference to a value of type that is a null reference. + The type of the reference. + A reference to a value of type that is a null reference. + + + Reads a value of type from the given location. + The location to read from. + The type to read. + An object of type read from the given location. + + + Reads a value of type from the given location without assuming architecture dependent alignment of the addresses. + The location to read from. + The type to read. + An object of type read from the given location. + + + Reads a value of type from the given location without assuming architecture dependent alignment of the addresses. + The location to read from. + The type to read. + An object of type read from the given location. + + + Returns the size of an object of the given type parameter. + The type of object whose size is retrieved. + The size of an object of type . + + + Bypasses definite assignment rules for a given value. + The uninitialized object. + The type of the uninitialized object. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of offset from pointer. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of offset from pointer. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subraction of offset from pointer. + + + Subtracts an element offset from the given void pointer. + The void pointer to subtract the offset from. + The offset to subtract. + The type of the void pointer. + A new void pointer that reflects the subtraction of offset from the specified pointer. + + + Subtracts a byte offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of byte offset from pointer. + + + Subtracts a byte offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subraction of byte offset from pointer. + + + Returns a to a boxed value. + The value to unbox. + The type to be unboxed. + + is , and is a non-nullable value type. + + is not a boxed value type. + +-or- + + is not a boxed . + + cannot be found. + A to the boxed value . + + + Writes a value of type to the given location. + The location to write to. + The value to write. + The type of value to write. + + + Writes a value of type to the given location without assuming architecture dependent alignment of the addresses. + The location to write to. + The value to write. + The type of value to write. + + + Writes a value of type to the given location without assuming architecture dependent alignment of the addresses. + The location to write to. + The value to write. + The type of value to write. + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/System.Text.Encodings.Web.dll b/db_lab/bin/Debug/System.Text.Encodings.Web.dll new file mode 100644 index 0000000..3d16c7e Binary files /dev/null and b/db_lab/bin/Debug/System.Text.Encodings.Web.dll differ diff --git a/db_lab/bin/Debug/System.Text.Encodings.Web.xml b/db_lab/bin/Debug/System.Text.Encodings.Web.xml new file mode 100644 index 0000000..ecf7979 --- /dev/null +++ b/db_lab/bin/Debug/System.Text.Encodings.Web.xml @@ -0,0 +1,939 @@ + + + + System.Text.Encodings.Web + + + + Represents an HTML character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of the HtmlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the HtmlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a JavaScript character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of JavaScriptEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the JavaScriptEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Gets a built-in JavaScript encoder instance that is less strict about what is encoded. + A JavaScript encoder instance. + + + The base class of web encoders. + + + Initializes a new instance of the class. + + + Encodes characters from an array and writes them to a object. + The stream to which to write the encoded text. + The array of characters to encode. + The array index of the first character to encode. + The number of characters in the array to encode. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the specified string to a object. + The stream to which to write the encoded text. + The string to encode. + + + Encodes a substring and writes it to a object. + The stream to which to write the encoded text. + The string whose substring is to be encoded. + The index where the substring starts. + The number of characters in the substring. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the supplied characters. + A source buffer containing the characters to encode. + The destination buffer to which the encoded form of will be written. + The number of characters consumed from the buffer. + The number of characters written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + An enumeration value that describes the result of the encoding operation. + + + Encodes the supplied string and returns the encoded text as a new string. + The string to encode. + + is . + The method failed. The encoder does not implement correctly. + The encoded string. + + + Encodes the supplied UTF-8 text. + A source buffer containing the UTF-8 text to encode. + The destination buffer to which the encoded form of will be written. + The number of bytes consumed from the buffer. + The number of bytes written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + A status code that describes the result of the encoding operation. + + + Finds the index of the first character to encode. + The text buffer to search. + The number of characters in . + The index of the first character to encode. + + + Finds the first element in a UTF-8 text input buffer that would be escaped by the current encoder instance. + The UTF-8 text input buffer to search. + The index of the first element in that would be escaped by the current encoder instance, or -1 if no data in requires escaping. + + + Encodes a Unicode scalar value and writes it to a buffer. + A Unicode scalar value. + A pointer to the buffer to which to write the encoded text. + The length of the destination in characters. + When the method returns, indicates the number of characters written to the . + + if is too small to fit the encoded text; otherwise, returns . + + + Determines if a given Unicode scalar value will be encoded. + A Unicode scalar value. + + if the value will be encoded by this encoder; otherwise, returns . + + + Gets the maximum number of characters that this encoder can generate for each input code point. + The maximum number of characters. + + + Represents a filter that allows only certain Unicode code points. + + + Instantiates an empty filter (allows no code points through by default). + + + Instantiates a filter by cloning the allowed list of another object. + The other object to be cloned. + + + Instantiates a filter where only the character ranges specified by are allowed by the filter. + The allowed character ranges. + + is . + + + Allows the character specified by through the filter. + The allowed character. + + + Allows all characters specified by through the filter. + The allowed characters. + + is . + + + Allows all code points specified by . + The allowed code points. + + is . + + + Allows all characters specified by through the filter. + The range of characters to be allowed. + + is . + + + Allows all characters specified by through the filter. + The ranges of characters to be allowed. + + is . + + + Resets this object by disallowing all characters. + + + Disallows the character through the filter. + The disallowed character. + + + Disallows all characters specified by through the filter. + The disallowed characters. + + is . + + + Disallows all characters specified by through the filter. + The range of characters to be disallowed. + + is . + + + Disallows all characters specified by through the filter. + The ranges of characters to be disallowed. + + is . + + + Gets an enumerator of all allowed code points. + The enumerator of allowed code points. + + + Represents a URL character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of UrlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the UrlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a contiguous range of Unicode code points. + + + Creates a new that includes a specified number of characters starting at a specified Unicode code point. + The first code point in the range. + The number of code points in the range. + + is less than zero or greater than 0xFFFF. + +-or- + + is less than zero. + +-or- + + plus is greater than 0xFFFF. + + + Creates a new instance from a span of characters. + The first character in the range. + The last character in the range. + + precedes . + A range that includes all characters between and . + + + Gets the first code point in the range represented by this instance. + The first code point in the range. + + + Gets the number of code points in the range represented by this instance. + The number of code points in the range. + + + Provides static properties that return predefined instances that correspond to blocks from the Unicode specification. + + + Gets a range that consists of the entire Basic Multilingual Plane (BMP), from U+0000 to U+FFFF). + A range that consists of the entire BMP. + + + Gets the Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + The Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + + + Gets the Arabic Unicode block (U+0600-U+06FF). + The Arabic Unicode block (U+0600-U+06FF). + + + Gets the Arabic Extended-A Unicode block (U+08A0-U+08FF). + The Arabic Extended-A Unicode block (U+08A0-U+08FF). + + + A corresponding to the 'Arabic Extended-B' Unicode block (U+0870..U+089F). + + + Gets the Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + The Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + + + Gets the Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + The Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + + + Gets the Arabic Supplement Unicode block (U+0750-U+077F). + The Arabic Supplement Unicode block (U+0750-U+077F). + + + Gets the Armenian Unicode block (U+0530-U+058F). + The Armenian Unicode block (U+0530-U+058F). + + + Gets the Arrows Unicode block (U+2190-U+21FF). + The Arrows Unicode block (U+2190-U+21FF). + + + Gets the Balinese Unicode block (U+1B00-U+1B7F). + The Balinese Unicode block (U+1B00-U+1B7F). + + + Gets the Bamum Unicode block (U+A6A0-U+A6FF). + The Bamum Unicode block (U+A6A0-U+A6FF). + + + Gets the Basic Latin Unicode block (U+0021-U+007F). + The Basic Latin Unicode block (U+0021-U+007F). + + + Gets the Batak Unicode block (U+1BC0-U+1BFF). + The Batak Unicode block (U+1BC0-U+1BFF). + + + Gets the Bengali Unicode block (U+0980-U+09FF). + The Bengali Unicode block (U+0980-U+09FF). + + + Gets the Block Elements Unicode block (U+2580-U+259F). + The Block Elements Unicode block (U+2580-U+259F). + + + Gets the Bopomofo Unicode block (U+3100-U+312F). + The Bopomofo Unicode block (U+3105-U+312F). + + + Gets the Bopomofo Extended Unicode block (U+31A0-U+31BF). + The Bopomofo Extended Unicode block (U+31A0-U+31BF). + + + Gets the Box Drawing Unicode block (U+2500-U+257F). + The Box Drawing Unicode block (U+2500-U+257F). + + + Gets the Braille Patterns Unicode block (U+2800-U+28FF). + The Braille Patterns Unicode block (U+2800-U+28FF). + + + Gets the Buginese Unicode block (U+1A00-U+1A1F). + The Buginese Unicode block (U+1A00-U+1A1F). + + + Gets the Buhid Unicode block (U+1740-U+175F). + The Buhid Unicode block (U+1740-U+175F). + + + Gets the Cham Unicode block (U+AA00-U+AA5F). + The Cham Unicode block (U+AA00-U+AA5F). + + + Gets the Cherokee Unicode block (U+13A0-U+13FF). + The Cherokee Unicode block (U+13A0-U+13FF). + + + Gets the Cherokee Supplement Unicode block (U+AB70-U+ABBF). + The Cherokee Supplement Unicode block (U+AB70-U+ABBF). + + + Gets the CJK Compatibility Unicode block (U+3300-U+33FF). + The CJK Compatibility Unicode block (U+3300-U+33FF). + + + Gets the CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + The CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + + + Gets the CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + The CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + + + Gets the CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + The CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + + + Gets the CJK Strokes Unicode block (U+31C0-U+31EF). + The CJK Strokes Unicode block (U+31C0-U+31EF). + + + Gets the CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + The CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + + + Gets the CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + The CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + + + Gets the CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + The CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + + + Gets the Combining Diacritical Marks Unicode block (U+0300-U+036F). + The Combining Diacritical Marks Unicode block (U+0300-U+036F). + + + Gets the Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + The Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + + + Gets the Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + The Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + + + Gets the Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + The Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + + + Gets the Combining Half Marks Unicode block (U+FE20-U+FE2F). + The Combining Half Marks Unicode block (U+FE20-U+FE2F). + + + Gets the Common Indic Number Forms Unicode block (U+A830-U+A83F). + The Common Indic Number Forms Unicode block (U+A830-U+A83F). + + + Gets the Control Pictures Unicode block (U+2400-U+243F). + The Control Pictures Unicode block (U+2400-U+243F). + + + Gets the Coptic Unicode block (U+2C80-U+2CFF). + The Coptic Unicode block (U+2C80-U+2CFF). + + + Gets the Currency Symbols Unicode block (U+20A0-U+20CF). + The Currency Symbols Unicode block (U+20A0-U+20CF). + + + Gets the Cyrillic Unicode block (U+0400-U+04FF). + The Cyrillic Unicode block (U+0400-U+04FF). + + + Gets the Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + The Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + + + Gets the Cyrillic Extended-B Unicode block (U+A640-U+A69F). + The Cyrillic Extended-B Unicode block (U+A640-U+A69F). + + + A corresponding to the 'Cyrillic Extended-C' Unicode block (U+1C80..U+1C8F). + + + Gets the Cyrillic Supplement Unicode block (U+0500-U+052F). + The Cyrillic Supplement Unicode block (U+0500-U+052F). + + + Gets the Devangari Unicode block (U+0900-U+097F). + The Devangari Unicode block (U+0900-U+097F). + + + Gets the Devanagari Extended Unicode block (U+A8E0-U+A8FF). + The Devanagari Extended Unicode block (U+A8E0-U+A8FF). + + + Gets the Dingbats Unicode block (U+2700-U+27BF). + The Dingbats Unicode block (U+2700-U+27BF). + + + Gets the Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + The Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + + + Gets the Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + The Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + + + Gets the Ethiopic Unicode block (U+1200-U+137C). + The Ethiopic Unicode block (U+1200-U+137C). + + + Gets the Ethipic Extended Unicode block (U+2D80-U+2DDF). + The Ethipic Extended Unicode block (U+2D80-U+2DDF). + + + Gets the Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + The Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + + + Gets the Ethiopic Supplement Unicode block (U+1380-U+1399). + The Ethiopic Supplement Unicode block (U+1380-U+1399). + + + Gets the General Punctuation Unicode block (U+2000-U+206F). + The General Punctuation Unicode block (U+2000-U+206F). + + + Gets the Geometric Shapes Unicode block (U+25A0-U+25FF). + The Geometric Shapes Unicode block (U+25A0-U+25FF). + + + Gets the Georgian Unicode block (U+10A0-U+10FF). + The Georgian Unicode block (U+10A0-U+10FF). + + + A corresponding to the 'Georgian Extended' Unicode block (U+1C90..U+1CBF). + + + Gets the Georgian Supplement Unicode block (U+2D00-U+2D2F). + The Georgian Supplement Unicode block (U+2D00-U+2D2F). + + + Gets the Glagolitic Unicode block (U+2C00-U+2C5F). + The Glagolitic Unicode block (U+2C00-U+2C5F). + + + Gets the Greek and Coptic Unicode block (U+0370-U+03FF). + The Greek and Coptic Unicode block (U+0370-U+03FF). + + + Gets the Greek Extended Unicode block (U+1F00-U+1FFF). + The Greek Extended Unicode block (U+1F00-U+1FFF). + + + Gets the Gujarti Unicode block (U+0A81-U+0AFF). + The Gujarti Unicode block (U+0A81-U+0AFF). + + + Gets the Gurmukhi Unicode block (U+0A01-U+0A7F). + The Gurmukhi Unicode block (U+0A01-U+0A7F). + + + Gets the Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + The Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + + + Gets the Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + The Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + + + Gets the Hangul Jamo Unicode block (U+1100-U+11FF). + The Hangul Jamo Unicode block (U+1100-U+11FF). + + + Gets the Hangul Jamo Extended-A Unicode block (U+A960-U+A9F). + The Hangul Jamo Extended-A Unicode block (U+A960-U+A97F). + + + Gets the Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + The Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + + + Gets the Hangul Syllables Unicode block (U+AC00-U+D7AF). + The Hangul Syllables Unicode block (U+AC00-U+D7AF). + + + Gets the Hanunoo Unicode block (U+1720-U+173F). + The Hanunoo Unicode block (U+1720-U+173F). + + + Gets the Hebrew Unicode block (U+0590-U+05FF). + The Hebrew Unicode block (U+0590-U+05FF). + + + Gets the Hiragana Unicode block (U+3040-U+309F). + The Hiragana Unicode block (U+3040-U+309F). + + + Gets the Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + The Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + + + Gets the IPA Extensions Unicode block (U+0250-U+02AF). + The IPA Extensions Unicode block (U+0250-U+02AF). + + + Gets the Javanese Unicode block (U+A980-U+A9DF). + The Javanese Unicode block (U+A980-U+A9DF). + + + Gets the Kanbun Unicode block (U+3190-U+319F). + The Kanbun Unicode block (U+3190-U+319F). + + + Gets the Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + The Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + + + Gets the Kannada Unicode block (U+0C81-U+0CFF). + The Kannada Unicode block (U+0C81-U+0CFF). + + + Gets the Katakana Unicode block (U+30A0-U+30FF). + The Katakana Unicode block (U+30A0-U+30FF). + + + Gets the Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + The Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + + + Gets the Kayah Li Unicode block (U+A900-U+A92F). + The Kayah Li Unicode block (U+A900-U+A92F). + + + Gets the Khmer Unicode block (U+1780-U+17FF). + The Khmer Unicode block (U+1780-U+17FF). + + + Gets the Khmer Symbols Unicode block (U+19E0-U+19FF). + The Khmer Symbols Unicode block (U+19E0-U+19FF). + + + Gets the Lao Unicode block (U+0E80-U+0EDF). + The Lao Unicode block (U+0E80-U+0EDF). + + + Gets the Latin-1 Supplement Unicode block (U+00A1-U+00FF). + The Latin-1 Supplement Unicode block (U+00A1-U+00FF). + + + Gets the Latin Extended-A Unicode block (U+0100-U+017F). + The Latin Extended-A Unicode block (U+0100-U+017F). + + + Gets the Latin Extended Additional Unicode block (U+1E00-U+1EFF). + The Latin Extended Additional Unicode block (U+1E00-U+1EFF). + + + Gets the Latin Extended-B Unicode block (U+0180-U+024F). + The Latin Extended-B Unicode block (U+0180-U+024F). + + + Gets the Latin Extended-C Unicode block (U+2C60-U+2C7F). + The Latin Extended-C Unicode block (U+2C60-U+2C7F). + + + Gets the Latin Extended-D Unicode block (U+A720-U+A7FF). + The Latin Extended-D Unicode block (U+A720-U+A7FF). + + + Gets the Latin Extended-E Unicode block (U+AB30-U+AB6F). + The Latin Extended-E Unicode block (U+AB30-U+AB6F). + + + Gets the Lepcha Unicode block (U+1C00-U+1C4F). + The Lepcha Unicode block (U+1C00-U+1C4F). + + + Gets the Letterlike Symbols Unicode block (U+2100-U+214F). + The Letterlike Symbols Unicode block (U+2100-U+214F). + + + Gets the Limbu Unicode block (U+1900-U+194F). + The Limbu Unicode block (U+1900-U+194F). + + + Gets the Lisu Unicode block (U+A4D0-U+A4FF). + The Lisu Unicode block (U+A4D0-U+A4FF). + + + Gets the Malayalam Unicode block (U+0D00-U+0D7F). + The Malayalam Unicode block (U+0D00-U+0D7F). + + + Gets the Mandaic Unicode block (U+0840-U+085F). + The Mandaic Unicode block (U+0840-U+085F). + + + Gets the Mathematical Operators Unicode block (U+2200-U+22FF). + The Mathematical Operators Unicode block (U+2200-U+22FF). + + + Gets the Meetei Mayek Unicode block (U+ABC0-U+ABFF). + The Meetei Mayek Unicode block (U+ABC0-U+ABFF). + + + Gets the Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + The Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + + + Gets the Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + The Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + + + Gets the Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + The Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + + + Gets the Miscellaneous Symbols Unicode block (U+2600-U+26FF). + The Miscellaneous Symbols Unicode block (U+2600-U+26FF). + + + Gets the Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + The Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + + + Gets the Miscellaneous Technical Unicode block (U+2300-U+23FF). + The Miscellaneous Technical Unicode block (U+2300-U+23FF). + + + Gets the Modifier Tone Letters Unicode block (U+A700-U+A71F). + The Modifier Tone Letters Unicode block (U+A700-U+A71F). + + + Gets the Mongolian Unicode block (U+1800-U+18AF). + The Mongolian Unicode block (U+1800-U+18AF). + + + Gets the Myanmar Unicode block (U+1000-U+109F). + The Myanmar Unicode block (U+1000-U+109F). + + + Gets the Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + The Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + + + Gets the Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + The Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + + + Gets the New Tai Lue Unicode block (U+1980-U+19DF). + The New Tai Lue Unicode block (U+1980-U+19DF). + + + Gets the NKo Unicode block (U+07C0-U+07FF). + The NKo Unicode block (U+07C0-U+07FF). + + + Gets an empty Unicode range. + A Unicode range with no elements. + + + Gets the Number Forms Unicode block (U+2150-U+218F). + The Number Forms Unicode block (U+2150-U+218F). + + + Gets the Ogham Unicode block (U+1680-U+169F). + The Ogham Unicode block (U+1680-U+169F). + + + Gets the Ol Chiki Unicode block (U+1C50-U+1C7F). + The Ol Chiki Unicode block (U+1C50-U+1C7F). + + + Gets the Optical Character Recognition Unicode block (U+2440-U+245F). + The Optical Character Recognition Unicode block (U+2440-U+245F). + + + Gets the Oriya Unicode block (U+0B00-U+0B7F). + The Oriya Unicode block (U+0B00-U+0B7F). + + + Gets the Phags-pa Unicode block (U+A840-U+A87F). + The Phags-pa Unicode block (U+A840-U+A87F). + + + Gets the Phonetic Extensions Unicode block (U+1D00-U+1D7F). + The Phonetic Extensions Unicode block (U+1D00-U+1D7F). + + + Gets the Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + The Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + + + Gets the Rejang Unicode block (U+A930-U+A95F). + The Rejang Unicode block (U+A930-U+A95F). + + + Gets the Runic Unicode block (U+16A0-U+16FF). + The Runic Unicode block (U+16A0-U+16FF). + + + Gets the Samaritan Unicode block (U+0800-U+083F). + The Samaritan Unicode block (U+0800-U+083F). + + + Gets the Saurashtra Unicode block (U+A880-U+A8DF). + The Saurashtra Unicode block (U+A880-U+A8DF). + + + Gets the Sinhala Unicode block (U+0D80-U+0DFF). + The Sinhala Unicode block (U+0D80-U+0DFF). + + + Gets the Small Form Variants Unicode block (U+FE50-U+FE6F). + The Small Form Variants Unicode block (U+FE50-U+FE6F). + + + Gets the Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + The Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + + + Gets the Specials Unicode block (U+FFF0-U+FFFF). + The Specials Unicode block (U+FFF0-U+FFFF). + + + Gets the Sundanese Unicode block (U+1B80-U+1BBF). + The Sundanese Unicode block (U+1B80-U+1BBF). + + + Gets the Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + The Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + + + Gets the Superscripts and Subscripts Unicode block (U+2070-U+209F). + The Superscripts and Subscripts Unicode block (U+2070-U+209F). + + + Gets the Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + The Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + + + Gets the Supplemental Arrows-B Unicode block (U+2900-U+297F). + The Supplemental Arrows-B Unicode block (U+2900-U+297F). + + + Gets the Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + The Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + + + Gets the Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + The Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + + + Gets the Syloti Nagri Unicode block (U+A800-U+A82F). + The Syloti Nagri Unicode block (U+A800-U+A82F). + + + Gets the Syriac Unicode block (U+0700-U+074F). + The Syriac Unicode block (U+0700-U+074F). + + + A corresponding to the 'Syriac Supplement' Unicode block (U+0860..U+086F). + + + Gets the Tagalog Unicode block (U+1700-U+171F). + The Tagalog Unicode block (U+1700-U+171F). + + + Gets the Tagbanwa Unicode block (U+1760-U+177F). + The Tagbanwa Unicode block (U+1760-U+177F). + + + Gets the Tai Le Unicode block (U+1950-U+197F). + The Tai Le Unicode block (U+1950-U+197F). + + + Gets the Tai Tham Unicode block (U+1A20-U+1AAF). + The Tai Tham Unicode block (U+1A20-U+1AAF). + + + Gets the Tai Viet Unicode block (U+AA80-U+AADF). + The Tai Viet Unicode block (U+AA80-U+AADF). + + + Gets the Tamil Unicode block (U+0B80-U+0BFF). + The Tamil Unicode block (U+0B82-U+0BFA). + + + Gets the Telugu Unicode block (U+0C00-U+0C7F). + The Telugu Unicode block (U+0C00-U+0C7F). + + + Gets the Thaana Unicode block (U+0780-U+07BF). + The Thaana Unicode block (U+0780-U+07BF). + + + Gets the Thai Unicode block (U+0E00-U+0E7F). + The Thai Unicode block (U+0E00-U+0E7F). + + + Gets the Tibetan Unicode block (U+0F00-U+0FFF). + The Tibetan Unicode block (U+0F00-U+0FFF). + + + Gets the Tifinagh Unicode block (U+2D30-U+2D7F). + The Tifinagh Unicode block (U+2D30-U+2D7F). + + + Gets the Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + The Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + + + Gets the Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + The Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + + + Gets the Vai Unicode block (U+A500-U+A63F). + The Vai Unicode block (U+A500-U+A63F). + + + Gets the Variation Selectors Unicode block (U+FE00-U+FE0F). + The Variation Selectors Unicode block (U+FE00-U+FE0F). + + + Gets the Vedic Extensions Unicode block (U+1CD0-U+1CFF). + The Vedic Extensions Unicode block (U+1CD0-U+1CFF). + + + Gets the Vertical Forms Unicode block (U+FE10-U+FE1F). + The Vertical Forms Unicode block (U+FE10-U+FE1F). + + + Gets the Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + The Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + + + Gets the Yi Radicals Unicode block (U+A490-U+A4CF). + The Yi Radicals Unicode block (U+A490-U+A4CF). + + + Gets the Yi Syllables Unicode block (U+A000-U+A48F). + The Yi Syllables Unicode block (U+A000-U+A48F). + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/System.Text.Json.dll b/db_lab/bin/Debug/System.Text.Json.dll new file mode 100644 index 0000000..7405d75 Binary files /dev/null and b/db_lab/bin/Debug/System.Text.Json.dll differ diff --git a/db_lab/bin/Debug/System.Text.Json.xml b/db_lab/bin/Debug/System.Text.Json.xml new file mode 100644 index 0000000..da1a571 --- /dev/null +++ b/db_lab/bin/Debug/System.Text.Json.xml @@ -0,0 +1,5785 @@ + + + + System.Text.Json + + + + Defines how the struct handles comments. + + + Allows comments within the JSON input and treats them as valid tokens. While reading, the caller can access the comment values. + + + Doesn't allow comments within the JSON input. Comments are treated as invalid JSON if found, and a is thrown. This is the default value. + + + Allows comments within the JSON input and ignores them. The behaves as if no comments are present. + + + Provides a mechanism for examining the structural content of a JSON value without automatically instantiating data values. + + + Releases the resources used by this instance. + + + Parses a sequence as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses memory as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON string value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + + contains unsupported options. + A task to produce a JsonDocument representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + A JsonDocument representing the value (and nested values) read from the reader. + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + When the method returns, contains the parsed document. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonDocument; if the reader ran out of data while parsing. All other situations result in an exception being thrown. + + + Writes the document to the provided writer as a JSON value. + The writer to which to write the document. + The parameter is . + The of this would result in invalid JSON. + The parent has been disposed. + + + Gets the root element of this JSON document. + A representing the value of the document. + + + Provides the ability for the user to define custom behavior when parsing JSON to create a . + + + Gets or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma at the end of a list of JSON values in an object or array is allowed; otherwise, . Default is + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The comment handling enum is set to a value that is not supported (or not within the enum range). + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when parsing JSON data, with the default (that is, 0) indicating a maximum depth of 64. + The max depth is set to a negative value. + The maximum depth allowed when parsing JSON data. + + + Represents a specific JSON value within a . + + + Gets a JsonElement that can be safely stored beyond the lifetime of the original . + A JsonElement that can be safely stored beyond the lifetime of the original . + + + Gets an enumerator to enumerate the values in the JSON array represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the values in the JSON array represented by this JsonElement. + + + Gets an enumerator to enumerate the properties in the JSON object represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the properties in the JSON object represented by this JsonElement. + + + Gets the number of values contained within the current array value. + This value's is not . + The parent has been disposed. + The number of values contained within the current array value. + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a byte array. + This value's is not . + The value is not encoded as Base64 text and hence cannot be decoded to bytes. + The parent has been disposed. + The value decoded as a byte array. + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as an . + + + Gets a representing the value of a required property identified by . + The UTF-8 representation (with no Byte-Order-Mark (BOM)) of the name of the property to return. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + + is . + The parent has been disposed. + A representing the value of the requested property. + + + Gets a string that represents the original input data backing this value. + The parent has been disposed. + The original input data backing this value. + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + A JsonElement representing the value (and nested values) read from the reader. + + + Gets a string representation for the current value appropriate to the value type. + The parent has been disposed. + A string representation for the current value appropriate to the value type. + + + Attempts to represent the current JSON number as a . + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a byte array, assuming that it is Base64 encoded. + If the method succeeds, contains the decoded binary representation of the Base64 text. + This value's is not . + The parent has been disposed. + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The UTF-8 (with no Byte-Order-Mark (BOM)) representation of the name of the property to return. + Receives the value of the located property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, its value is assigned to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + + is . + The parent has been disposed. + + if the property was found; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Receives the parsed element. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonElement; if the reader ran out of data while parsing. + All other situations result in an exception being thrown. + + + Compares the text represented by a UTF8-encoded byte span to the string value of this element. + The UTF-8 encoded text to compare against. + This value's is not . + + if the string value of this element has the same UTF-8 encoding as + ; otherwise, . + + + Compares a specified read-only character span to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Compares a specified string to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Writes the element to the specified writer as a JSON value. + The writer to which to write the element. + The parameter is . + The of this value is . + The parent has been disposed. + + + Gets the value at the specified index if the current value is an . + The item index. + This value's is not . + + is not in the range [0, ()). + The parent has been disposed. + The value at the specified index. + + + Gets the type of the current JSON value. + The parent has been disposed. + The type of the current JSON value. + + + Represents an enumerator for the contents of a JSON array. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the array. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for an array of that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an enumerator for the properties of a JSON object. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates the properties of an object. + An enumerator that can be used to iterate through the object. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for objects that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides methods to transform UTF-8 or UTF-16 encoded text into a form that is suitable for JSON. + + + Encodes a UTF-8 text value as a JSON string. + The UTF-8 encoded text to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-8 bytes. + The encoded JSON text. + + + Encodes a specified text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Encodes the string text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is . + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Determines whether this instance and a specified object, which must also be a instance, have the same value. + The object to compare to this instance. + + if the current instance and are equal; otherwise, . + + + Determines whether this instance and another specified instance have the same value. + The object to compare to this instance. + + if this instance and have the same value; otherwise, . + + + Returns the hash code for this . + The hash code for this instance. + + + Converts the value of this instance to a . + The underlying UTF-16 encoded string. + + + Gets the UTF-8 encoded representation of the pre-encoded JSON text. + The UTF-8 encoded representation of the pre-encoded JSON text. + + + Gets the UTF-16 encoded representation of the pre-encoded JSON text as a . + + + Defines a custom exception object that is thrown when invalid JSON text is encountered, the defined maximum depth is passed, or the JSON text is not compatible with the type of a property on an object. + + + Initializes a new instance of the class. + + + Creates a new exception object with serialized data. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + is . + + + Initializes a new instance of the class with a specified error message. + The context-specific error message. + + + Initializes a new instance of the class, with a specified error message and a reference to the inner exception that is the cause of this exception. + The context-specific error message. + The exception that caused the current exception. + + + Creates a new exception object to relay error information to the user. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count within the current line (starting at 0) where the invalid JSON was encountered. + + + Creates a new exception object to relay error information to the user that includes a specified inner exception. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count (starting at 0) within the current line where the invalid JSON was encountered. + The exception that caused the current exception. + + + Sets the with information about the exception. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + + Gets the zero-based number of bytes read within the current line before the exception. + The zero-based number of bytes read within the current line before the exception. + + + Gets the zero-based number of lines read before the exception. + The zero-based number of lines read before the exception. + + + Gets a message that describes the current exception. + The error message that describes the current exception. + + + Gets The path within the JSON where the exception was encountered. + The path within the JSON where the exception was encountered. + + + Determines the naming policy used to convert a string-based name to another format, such as a camel-casing format. + + + Initializes a new instance of . + + + When overridden in a derived class, converts the specified name according to the policy. + The name to convert. + The converted name. + + + Gets the naming policy for camel-casing. + The naming policy for camel-casing. + + + Gets the naming policy for lowercase kebab-casing. + + + Gets the naming policy for uppercase kebab-casing. + + + Gets the naming policy for lowercase snake-casing. + + + Gets the naming policy for uppercase snake-casing. + + + Represents a single property for a JSON object. + + + Compares the specified UTF-8 encoded text to the name of this property. + The UTF-8 encoded text to compare against. + This value's is not . + + if the name of this property has the same UTF-8 encoding as ; otherwise, . + + + Compares the specified text as a character span to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise, . + + + Compares the specified string to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise . + + + Provides a string representation of the property for debugging purposes. + A string containing the uninterpreted value of the property, beginning at the declaring open-quote and ending at the last character that is part of the value. + + + Writes the property to the provided writer as a named JSON object property. + The writer to which to write the property. + + is . + + is too large to be a JSON object property. + The of this JSON property's would result in invalid JSON. + The parent has been disposed. + + + Gets the name of this property. + The name of this property. + + + Gets the value of this property. + The value of this property. + + + Provides the ability for the user to define custom behavior when reading JSON. + + + Gets or sets a value that defines whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma is allowed; otherwise, . + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The property is being set to a value that is not a member of the enumeration. + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when reading JSON, with the default (that is, 0) indicating a maximum depth of 64. + The maximum depth is being set to a negative value. + The maximum depth allowed when reading JSON. + + + Defines an opaque type that holds and saves all the relevant state information, which must be provided to the to continue reading after processing incomplete data. + + + Constructs a new instance. + Defines the customized behavior of the that is different from the JSON RFC (for example how to handle comments, or the maximum depth allowed when reading). By default, the follows the JSON RFC strictly (comments within the JSON are invalid) and reads up to a maximum depth of 64. + The maximum depth is set to a non-positive value (< 0). + + + Gets the custom behavior to use when reading JSON data using the struct that may deviate from strict adherence to the JSON specification, which is the default behavior. + The custom behavior to use when reading JSON data. + + + Provides functionality to serialize objects or value types to JSON and to deserialize JSON into objects or value types. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + + or is . + The JSON is invalid, + or there is remaining data in the Stream. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + + or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + The JSON is invalid, + or there is remaining data in the buffer. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + +-or- + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance specified by the . + The reader to read. + Metadata about the type to convert. + The JSON is invalid, + is not compatible with the JSON, + or a value could not be read from the reader. + + is using unsupported options. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader and converts it into an instance of a specified type. + The reader to read the JSON from. + The type of the object to convert to and return. + Options to control the serializer behavior during reading. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Options to control the behavior during reading. + The type to deserialize the JSON value into. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the UTF-8 encoded text. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the JSON value. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance of the type specified by a generic type parameter. + The reader to read the JSON from. + Options to control serializer behavior during reading. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + uses unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The that can be used to cancel the read operation. + + or is . + The JSON is invalid, + or when there is remaining data in the Stream. + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a specified type. The stream will be read to completion. + The JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + A cancellation token that may be used to cancel the read operation. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + The that can be used to cancel the read operation. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a type specified by a generic type parameter. The stream will be read to completion. + The JSON data to parse. + Options to control the behavior during reading. + A token that may be used to cancel the read operation. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + + is . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The which may be used to cancel the read operation. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Options to control the behavior during reading. + The which may be used to cancel the read operation. + The element type to deserialize asynchronously. + + is . + An representation of the provided JSON array. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Metadata about the element type to convert. + The that can be used to cancel the read operation. + The element type to deserialize asynchronously. + + or is . + An representation of the provided JSON array. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the value of a specified type into a JSON string. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + + or is . + + does not match the type of . + + + Writes the JSON representation of the specified type to the provided writer. + The JSON writer to write to. + The value to convert and write. + The type of the to convert. + Options to control serialization behavior. + + is not compatible with + + or is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + A JSON writer to write to. + The value to convert and write. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + + Converts the value of a type specified by a generic type parameter into a JSON string. + The value to convert. + Options to control serialization behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes the JSON representation of a type specified by a generic type parameter to the provided writer. + A JSON writer to write to. + The value to convert and write. + Options to control serialization behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + The type of the value to serialize. + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and writes it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + + is . + + does not match the type of . + A task that represents the asynchronous write operation. + + + Asynchronously converts the value of a specified type to UTF-8 encoded JSON text and writes it to the specified stream. + The UTF-8 stream to write to. + The value to convert. + The type of the to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + The that can be used to cancel the write operation. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Asynchronously converts a value of a type specified by a generic type parameter to UTF-8 encoded JSON text and writes it to a stream. + The UTF-8 stream to write to. + The value to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A UTF-8 representation of the value. + + + Converts a value of the specified type into a JSON string, encoded as UTF-8 bytes. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A UTF-8 representation of the value. + + + Converts the value of a type specified by a generic type parameter into a JSON string, encoded as UTF-8 bytes. + The value to convert. + Options to control the conversion behavior. + The type of the value. + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A UTF-8 representation of the value. + + + Indicates whether unconfigured instances should be set to use the reflection-based . + + + Specifies scenario-based default serialization options that can be used to construct a instance. + + + + General-purpose option values. These are the same settings that are applied if a member isn't specified. + For information about the default property values that are applied, see JsonSerializerOptions properties. + + + + + Option values appropriate to Web-based scenarios. + This member implies that: + - Property names are treated as case-insensitive. + - "camelCase" name formatting should be employed. + - Quoted numbers (JSON strings for number properties) are allowed. + + + + Provides options to be used with . + + + Initializes a new instance of the class. + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + + Copies the options from a instance to a new instance. + The options instance to copy options from. + + is . + + + Appends a new to the metadata resolution of the current instance. + The generic definition of the specified context type. + + + Returns the converter for the specified type. + The type to return a converter for. + The configured for returned an invalid converter. + There is no compatible for or its serializable members. + The first converter that supports the given type. + + + Gets the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + + is . + + is not valid for serialization. + The contract metadata resolved for . + + + Marks the current instance as read-only to prevent any further user modification. + The instance does not specify a setting. + + + Marks the current instance as read-only preventing any further user modification. + Populates unconfigured properties with the reflection-based default. + + The instance does not specify a setting. Thrown when is . + -or- + The feature switch has been turned off. + + + + Tries to get the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + When this method returns, contains the resolved contract metadata, or if the contract could not be resolved. + + is . + + is not valid for serialization. + + if a contract for was found, or otherwise. + + + Get or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being deserialized. + This property was set after serialization or deserialization has occurred. + + if an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored); otherwise. + + + Gets the list of user-defined converters that were registered. + The list of custom converters. + + + Gets a read-only, singleton instance of that uses the default configuration. + + + Gets or sets the default buffer size, in bytes, to use when creating temporary buffers. + The buffer size is less than 1. + This property was set after serialization or deserialization has occurred. + The default buffer size in bytes. + + + Gets or sets a value that determines when properties with default values are ignored during serialization or deserialization. + The default value is . + This property is set to . + This property is set after serialization or deserialization has occurred. + +-or- + + has been set to . These properties cannot be used together. + + + Gets or sets the policy used to convert a key's name to another format, such as camel-casing. + The policy used to convert a key's name to another format. + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoding. + + + Gets or sets a value that indicates whether values are ignored during serialization and deserialization. The default value is . + This property was set after serialization or deserialization has occurred. + +-or- + + has been set to a non-default value. These properties cannot be used together. + + if null values are ignored during serialization and deserialization; otherwise, . + + + Gets or sets a value that indicates whether read-only fields are ignored during serialization. A field is read-only if it is marked with the keyword. The default value is . + This property is set after serialization or deserialization has occurred. + + if read-only fields are ignored during serialization; otherwise. + + + Gets a value that indicates whether read-only properties are ignored during serialization. The default value is . + This property was set after serialization or deserialization has occurred. + + if read-only properties are ignored during serialization; otherwise, . + + + Gets or sets a value that indicates whether fields are handled during serialization and deserialization. + The default value is . + This property is set after serialization or deserialization has occurred. + + if fields are included during serialization; otherwise, . + + + Gets a value that indicates whether the current instance has been locked for user modification. + + + Gets or sets the maximum depth allowed when serializing or deserializing JSON, with the default value of 0 indicating a maximum depth of 64. + This property was set after serialization or deserialization has occurred. + The max depth is set to a negative value. + The maximum depth allowed when serializing or deserializing JSON. + + + Gets or sets an object that specifies how number types should be handled when serializing or deserializing. + This property is set after serialization or deserialization has occurred. + + + Gets or sets the preferred object creation handling for properties when deserializing JSON. + When set to , all properties that are capable of reusing the existing instance will be populated. + + + Gets or sets a value that indicates whether a property's name uses a case-insensitive comparison during deserialization. The default value is . + + if property names are compared case-insensitively; otherwise, . + + + Gets or sets a value that specifies the policy used to convert a property's name on an object to another format, such as camel-casing, or to leave property names unchanged. + A property naming policy, or to leave property names unchanged. + + + Gets or sets a value that defines how comments are handled during deserialization. + This property was set after serialization or deserialization has occurred. + The comment handling enum is set to a value that is not supported (or not within the enum range). + A value that indicates whether comments are allowed, disallowed, or skipped. + + + Gets or sets an object that specifies how object references are handled when reading and writing JSON. + + + Gets or sets the contract resolver used by this instance. + The property is set after serialization or deserialization has occurred. + + + Gets the list of chained contract resolvers used by this instance. + + + Gets or sets an object that specifies how deserializing a type declared as an is handled during deserialization. + + + Gets or sets an object that specifies how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Gets or sets a value that indicates whether JSON should use pretty printing. By default, JSON is serialized without any extra white space. + This property was set after serialization or deserialization has occurred. + + if JSON is pretty printed on serialization; otherwise, . The default is . + + + Defines the various JSON tokens that make up a JSON text. + + + The token type is a comment string. + + + The token type is the end of a JSON array. + + + The token type is the end of a JSON object. + + + The token type is the JSON literal false. + + + There is no value (as distinct from ). This is the default token type if no data has been read by the . + + + The token type is the JSON literal null. + + + The token type is a JSON number. + + + The token type is a JSON property name. + + + The token type is the start of a JSON array. + + + The token type is the start of a JSON object. + + + The token type is a JSON string. + + + The token type is the JSON literal true. + + + Specifies the data type of a JSON value. + + + A JSON array. + + + The JSON value false. + + + The JSON value null. + + + A JSON number. + + + A JSON object. + + + A JSON string. + + + The JSON value true. + + + There is no value (as distinct from ). + + + Allows the user to define custom behavior when writing JSON using the . + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoder used to override the escaping behavior. + + + Gets or sets a value that indicates whether the should format the JSON output, which includes indenting nested JSON tokens, adding new lines, and adding white space between property names and values. + + if the JSON output is formatted; if the JSON is written without any extra white space. The default is . + + + Gets or sets the maximum depth allowed when writing JSON, with the default (that is, 0) indicating a max depth of 1000. + Thrown when the max depth is set to a negative value. + + + Gets or sets a value that indicates whether the should skip structural validation and allow the user to write invalid JSON. + + if structural validation is skipped and invalid JSON is allowed; if an is thrown on any attempt to write invalid JSON. + + + Represents a mutable JSON array. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Initializes a new instance of the class that contains items from the specified array. + The items to add to the new . + + + Initializes a new instance of the class that contains items from the specified params array. + Options to control the behavior. + The items to add to the new . + + + Adds a to the end of the . + The to be added to the end of the . + + + Adds an object to the end of the . + The object to be added to the end of the . + The type of object to be added. + + + Removes all elements from the . + + + Determines whether an element is in the . + The object to locate in the . + + if is found in the ; otherwise, . + + + Initializes a new instance of the class that contains items from the specified . + The . + Options to control the behavior. + The is not a . + The new instance of the class that contains items from the specified . + + + Returns an enumerator that iterates through the . + An for the . + + + Returns an enumerable that wraps calls to . + The type of the value to obtain from the . + An enumerable iterating over values of the array. + + + The object to locate in the . + The to locate in the . + The index of item if found in the list; otherwise, -1. + + + Inserts an element into the at the specified index. + The zero-based index at which should be inserted. + The to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific from the . + The to remove from the . + + if is successfully removed; otherwise, . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + is less than 0 or is greater than . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Returns an enumerator that iterates through the . + A for the . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in the . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + The base class that represents a single node within a mutable JSON document. + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Creates a new instance of the class. All child nodes are recursively cloned. + A new cloned instance of the current node. + + + Compares the values of two nodes, including the values of all descendant nodes. + The to compare. + The to compare. + + if the tokens are equal; otherwise . + + + Returns the index of the current node from the parent . + The current parent is not a . + The index of the current node. + + + Gets the JSON path. + The JSON Path value. + + + Returns the property name of the current node from the parent object. + The current parent is not a . + The property name of the current node. + + + Gets the value for the current . + The type of the value to obtain from the . + The current cannot be represented as a {TValue}. + The current is not a or is not compatible with {TValue}. + A value converted from the instance. + + + Returns the of the current instance. + The json value kind of the current instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a nullable . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Parses a as UTF-8-encoded data representing a single JSON value into a . The Stream will be read to completion. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + is . + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Options to control the behavior. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + The from the reader. + + + Parses a as UTF-8 encoded data representing a single JSON value into a . The stream will be read to completion. + The JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + A to produce a representation of the JSON value. + + + Replaces this node with a new value. + The value that replaces this node. + The type of value to be replaced. + + + Converts the current instance to string in JSON format. + Options to control the serialization behavior. + JSON representation of current instance. + + + Gets a string representation for the current value appropriate to the node type. + A string representation for the current value appropriate to the node type. + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + The parameter is . + + + Gets or sets the element at the specified index. + The zero-based index of the element to get or set. + + is less than 0 or is greater than the number of properties. + The current is not a . + + + Gets or sets the element with the specified property name. + If the property is not found, is returned. + The name of the property to return. + + is . + The current is not a . + + + Gets the options to control the behavior. + + + Gets the parent . + If there is no parent, is returned. + A parent can either be a or a . + + + Gets the root . + + + Options to control behavior. + + + Gets or sets a value that indicates whether property names on are case insensitive. + + if property names are case insensitive; if property names are case sensitive. + + + Represents a mutable JSON object. + + + Initializes a new instance of the class that contains the specified . + The properties to be added. + Options to control the behavior. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Adds the specified property to the . + The KeyValuePair structure representing the property name and value to add to the . + An element with the same property name already exists in the . + The property name of is . + + + Adds an element with the provided property name and value to the . + The property name of the element to add. + The value of the element to add. + + is . + An element with the same property name already exists in the . + + + Removes all elements from the . + + + Determines whether the contains an element with the specified property name. + The property name to locate in the . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Initializes a new instance of the class that contains properties from the specified . + The . + Options to control the behavior. + The new instance of the class that contains properties from the specified . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Removes the element with the specified property name from the . + The property name of the element to remove. + + is . + + if the element is successfully removed; otherwise, . + + + Determines whether the contains a specific property name and reference. + The element to locate in the . + + if the contains an element with the property name; otherwise, . + + + Copies the elements of the to an array of type KeyValuePair starting at the specified array index. + The one-dimensional Array that is the destination of the elements copied from . + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Removes a key and value from the . + The KeyValuePair structure representing the property name and value to remove from the . + + if the element is successfully removed; otherwise, . + + + Gets the value associated with the specified property name. + The property name of the value to get. + When this method returns, contains the value associated with the specified property name, if the property name is found; otherwise, . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Returns the value of a property with the specified name. + The name of the property to return. + The JSON value of the property with the specified name. + + if a property with the specified name was found; otherwise, . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + Gets a collection containing the property names in the . + An containing the keys of the object that implements . + + + Gets a collection containing the property values in the . + An containing the values in the object that implements . + + + Represents a mutable JSON value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + The that will be used to serialize the value. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Tries to obtain the current JSON value and returns a value that indicates whether the operation succeeded. + When this method returns, contains the parsed value. + The type of value to obtain. + + if the value can be successfully obtained; otherwise, . + + + Specifies that the JSON type should have its method called after deserialization occurs. + + + The method that is called after deserialization. + + + Specifies that the type should have its method called before deserialization occurs. + + + The method that is called before deserialization. + + + Specifies that the type should have its method called after serialization occurs. + + + The method that is called after serialization. + + + Specifies that the type should have its method called before serialization occurs. + + + The method that is called before serialization. + + + Provides the base class for serialization attributes. + + + Creates a new instance of the . + + + When placed on a constructor, indicates that the constructor should be used to create instances of the type on deserialization. + + + Initializes a new instance of . + + + Converts an object or value to or from JSON. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + if the instance can convert the specified object type; otherwise, . + + + Gets the type being converted by the current converter instance. + + + Converts an object or value to or from JSON. + The type of object or value handled by the converter. + + + Initializes a new instance. + + + Determines whether the specified type can be converted. + The type to compare against. + + if the type can be converted; otherwise, . + + + Reads and converts the JSON to type . + The reader. + The type to convert. + An object that specifies serialization options to use. + The converted value. + + + Reads a dictionary key from a JSON property name. + The to read from. + The type to convert. + The options to use when reading the value. + The value that was converted. + + + Writes a specified value as JSON. + The writer to write to. + The value to convert to JSON. + An object that specifies serialization options to use. + + + Writes a dictionary key as a JSON property name. + The to write to. + The value to convert. The value of determines if the converter handles values. + The options to use when writing the value. + + + Gets a value that indicates whether should be passed to the converter on serialization, and whether should be passed on deserialization. + + + Gets the type being converted by the current converter instance. + + + When placed on a property or type, specifies the converter type to use. + + + Initializes a new instance of . + + + Initializes a new instance of with the specified converter type. + The type of the converter. + + + When overridden in a derived class and is , allows the derived class to create a in order to pass additional state. + The type of the converter. + The custom converter. + + + Gets the type of the , or if it was created without a type. + The type of the , or if it was created without a type. + + + Supports converting several types by using a factory pattern. + + + When overridden in a derived class, initializes a new instance of the class. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which is compatible with . + + + Gets the type being converted by the current converter instance. + + + When placed on a type declaration, indicates that the specified subtype should be opted into polymorphic serialization. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared based type. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + A derived type that should be supported in polymorphic serialization of the declared base type. + + + The type discriminator identifier to be used for the serialization of the subtype. + + + When placed on a property of type , any properties that do not have a matching member are added to that dictionary during deserialization and written during serialization. + + + Initializes a new instance of the class. + + + Prevents a property from being serialized or deserialized. + + + Initializes a new instance of . + + + Gets or sets the condition that must be met before a property will be ignored. + + + Controls how the ignores properties on serialization and deserialization. + + + Property is always ignored. + + + Property is always serialized and deserialized, regardless of configuration. + + + Property is ignored only if it equals the default value for its type. + + + Property is ignored if its value is . This is applied only to reference-type properties and fields. + + + Indicates that the member should be included for serialization and deserialization. + The attribute is applied to a non-public property. + + + Initializes a new instance of . + + + The to be used at run time. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that JSON property names should not be converted. + + + Converter to convert enums to and from numeric values. + The enum type that this converter targets. + + + Initializes a new instance of . + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Determines how handles numbers when serializing and deserializing. + + + The "NaN", "Infinity", and "-Infinity" tokens can be read as floating-point constants, and the and values for these constants will be written as their corresponding JSON string representations. + + + Numbers can be read from tokens. Does not prevent numbers from being read from token. + + + Numbers will only be read from tokens and will only be written as JSON numbers (without quotes). + + + Numbers will be written as JSON strings (with quotes), not as JSON numbers. + + + When placed on a type, property, or field, indicates what settings should be used when serializing or deserializing numbers. + + + Initializes a new instance of . + A bitwise combination of the enumeration values that specify how number types should be handled when serializing or deserializing. + + + Indicates what settings should be used when serializing or deserializing numbers. + An object that determines the number serialization and deserialization settings. + + + Determines how deserialization will handle object creation for fields or properties. + + + Attempt to populate any instances already found on a deserialized field or property. + + + A new instance will always be created when deserializing a field or property. + + + Determines how deserialization handles object creation for fields or properties. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the configuration to use when deserializing members. + + + When placed on a type, indicates that the type should be serialized polymorphically. + + + Creates a new instance. + + + Gets or sets a value that indicates whether the deserializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + + to instruct the deserializer to ignore any unrecognized type discriminator IDs and revert to the contract of the base type; to fail the deserialization for unrecognized type discriminator IDs. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + + + Specifies the property name that is present in the JSON when serializing and deserializing. This overrides any naming policy specified by . + + + Initializes a new instance of with the specified property name. + The name of the property. + + + Gets the name of the property. + The name of the property. + + + Specifies the property order that is present in the JSON when serializing. Lower values are serialized first. + If the attribute is not specified, the default value is 0. + + + Initializes a new instance of with the specified order. + The order of the property. + + + Gets the serialization order of the property. + The serialization order of the property. + + + Indicates that the annotated member must bind to a JSON property on deserialization. + + + Initializes a new instance of . + + + Instructs the System.Text.Json source generator to generate source code to help optimize performance when serializing and deserializing instances of the specified type and types in its object graph. + + + Initializes a new instance of with the specified type. + The type to generate source code for. + + + Gets or sets the mode that indicates what the source generator should generate for the type. If the value is , then the setting specified on will be used. + + + Gets or sets the name of the property for the generated for the type on the generated, derived type. + + + Provides metadata about a set of types that is relevant to JSON serialization. + + + Creates an instance of and binds it with the indicated . + The run time provided options for the context instance. + + + Gets metadata for the specified type. + The type to fetch metadata for. + The metadata for the specified type, or if the context has no metadata for the type. + + + Resolves a contract for the requested type and options. + The type to be resolved. + The configuration to use when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Gets the default run-time options for the context. + + + Gets the run-time specified options of the context. If no options were passed when instantiating the context, then a new instance is bound and returned. + + + The generation mode for the System.Text.Json source generator. + + + When specified on , indicates that both type-metadata initialization logic and optimized serialization logic should be generated for all types. When specified on , indicates that the setting on should be used. + + + Instructs the JSON source generator to generate type-metadata initialization logic. + + + Instructs the JSON source generator to generate optimized serialization logic. + + + Instructs the System.Text.Json source generator to assume the specified options will be used at run time via . + + + Initializes a new instance of . + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + is invalid. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default ignore condition. + + + Gets or sets the default value of . + + + Gets or sets the source generation mode for types that don't explicitly set the mode with . + + + Gets or sets a value that indicates whether to ignore read-only fields. + + + Gets or sets a value that indicates whether to ignore read-only properties. + + + Gets or sets a value that indicates whether to include fields for serialization and deserialization. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a built-in naming policy to convert JSON property names with. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a value that indicates whether the source generator defaults to instead of numeric serialization for all enum types encountered in its type graph. + + + Gets or sets a value that indicates whether JSON output is pretty-printed. + + + Converts enumeration values to and from strings. + + + Initializes an instance of the class with the default naming policy that allows integer values. + + + Initializes an instance of the class with a specified naming policy and a value that indicates whether undefined enumeration values are allowed. + The optional naming policy for writing enum values. + + to allow undefined enum values; otherwise, . When , if an enum value isn't defined, it will output as a number rather than a string. + + + Determines whether the specified type can be converted to an enum. + The type to be checked. + + true if the type can be converted; otherwise, false. + + + Creates a converter for the specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Converter to convert enums to and from strings. + The enum type that this converter targets. + + + Initializes a new instance of with the default naming policy and that allows integer values. + + + Initializes a new instance of . + Optional naming policy for writing enum values. + + to allow undefined enum values. When , if an enum value isn't defined, it outputs as a number rather than a string. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Defines how objects of a derived runtime type that has not been explicitly declared for polymorphic serialization should be handled. + + + An object of undeclared runtime type will fail polymorphic serialization. + + + An object of undeclared runtime type will fall back to the serialization contract of the base type. + + + An object of undeclared runtime type will revert to the serialization contract of the nearest declared ancestor type. + Certain interface hierarchies are not supported due to diamond ambiguity constraints. + + + Defines how deserializing a type declared as an is handled during deserialization. + + + A type declared as is deserialized as a . + + + A type declared as is deserialized as a . + + + Determines how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Throws an exception when an unmapped property is encountered. + + + Silently skips any unmapped properties. This is the default behavior. + + + When placed on a type, determines the configuration for the specific type, overriding the global setting. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the unmapped member handling setting for the attribute. + + + Defines the default, reflection-based JSON contract resolver used by System.Text.Json. + + + Creates a mutable instance. + + + Resolves a JSON contract for a given and configuration. + The type for which to resolve a JSON contract. + A instance used to determine contract configuration. + + or is . + A defining a reflection-derived JSON contract for . + + + Gets a list of user-defined callbacks that can be used to modify the initial contract. + + + Used to resolve the JSON serialization contract for requested types. + + + Resolves a contract for the requested type and options. + Type to be resolved. + Configuration used when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Provides serialization metadata about a collection type. + The collection type. + + + + A instance representing the element type. + + + If a dictionary type, the instance representing the key type. + + + The option to apply to number collection elements. + + + A to create an instance of the collection when deserializing. + + + An optimized serialization implementation assuming pre-determined defaults. + + + Represents a supported derived type defined in the metadata of a polymorphic type. + + + Initializes a new instance of the class that represents a supported derived type without a type discriminator. + The derived type to be supported by the polymorphic type metadata. + + + Initializes a new instance of the class that represents a supported derived type with an integer type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Initializes a new instance of the class that represents a supported derived type with a string type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Gets a derived type that should be supported in polymorphic serialization of the declared base type. + + + Gets the type discriminator identifier to be used for the serialization of the subtype. + + + Provides helpers to create and initialize metadata for JSON-serializable types. + + + Creates serialization metadata for an array. + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates serialization metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for and types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for non-dictionary immutable collection types. + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a complex class or struct. + The to use for serialization and deserialization. + Provides serialization metadata about an object type with constructors, properties, and fields. + The type of the class or struct. + + or is . + A instance representing the class or struct. + + + Creates metadata for a property or field. + The to use for serialization and deserialization. + Provides serialization metadata about the property or field. + The type that the converter for the property returns or accepts when converting JSON data. + A instance initialized with the provided metadata. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a primitive or a type with a custom converter. + The to use for serialization and deserialization. + + The generic type definition. + A instance representing the type. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the enum type. + A instance that converts values. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the underlying nullable type. + A instance that converts values + + + Creates a instance that converts values. + Serialization metadata for the underlying nullable type. + The generic definition for the underlying nullable type. + A instance that converts values + + + Gets a type converter that throws a . + The generic definition for the type. + A instance that throws + + + Gets an object that converts values. + + + Gets an object that converts byte array values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + An instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Provides serialization metadata about an object type with constructors, properties, and fields. + The object type to serialize or deserialize. + + + + Provides a mechanism to initialize metadata for a parameterized constructor of the class or struct to be used when deserializing. + + + Gets or sets an object that specifies how number properties and fields should be processed when serializing and deserializing. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterless constructor during deserialization. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterized constructor during deserialization. + + + Gets or sets a mechanism to initialize metadata for properties and fields of the class or struct. + + + Gets or sets a serialization implementation for instances of the class or struct that assumes options specified by . + + + Provides information about a constructor parameter required for JSON deserialization. + + + + Gets or sets the default value of the parameter. + + + Gets or sets a value that specifies whether a default value was specified for the parameter. + + + Gets or sets the name of the parameter. + + + Gets or sets the type of the parameter. + + + Gets or sets the zero-based position of the parameter in the formal parameter list. + + + Defines polymorphic configuration for a specified base type. + + + Creates an empty instance. + + + Gets the list of derived types supported in the current polymorphic type configuration. + + + Gets or sets a value that indicates whether the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + The parent instance has been locked for further modification. + + if the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type; if the deserialization should fail when an unrecognized type discriminator ID is encountered. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + The parent instance has been locked for further modification. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + The parent instance has been locked for further modification. + + + Provides JSON serialization-related metadata about a property or field. + + + Gets or sets the custom attribute provider for the current property. + The instance has been locked for further modification. + + + Gets or sets a custom converter override for the current property. + The instance has been locked for further modification. + + + Gets or sets a getter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a value that indicates whether the current property is a special extension data property. + The instance has been locked for further modification. + +-or- + +The current is not valid for use with extension data. + + + Gets or sets a value that indicates whether the current property is required for deserialization to be successful. + The instance has been locked for further modification. + + + Gets or sets the JSON property name used when serializing the property. + + is . + The instance has been locked for further modification. + + + Gets or sets the applied to the current property. + The instance has been locked for further modification. + + + Gets or sets a value indicating if the property or field should be replaced or populated during deserialization. + + + Gets the value associated with the current contract instance. + + + Gets or sets the serialization order for the current property. + The instance has been locked for further modification. + + + Gets the type of the current property. + + + Gets or sets a setter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a predicate that determines whether the current property value should be serialized. + The instance has been locked for further modification. + + + Provides serialization metadata about a property or field. + The type to convert of the for the property. + + + + A for the property or field, specified by . + + + The declaring type of the property or field. + + + Provides a mechanism to get the property or field's value. + + + Whether the property was annotated with . + + + Specifies a condition for the member to be ignored. + + + Whether the property was annotated with . + + + If , indicates that the member is a property, otherwise indicates the member is a field. + + + Whether the property or field is public. + + + Whether the property or field is a virtual property. + + + The name to be used when processing the property or field, specified by . + + + If the property or field is a number, specifies how it should processed when serializing and deserializing. + + + The name of the property or field. + + + The info for the property or field's type. + + + Provides a mechanism to set the property or field's value. + + + Provides JSON serialization-related metadata about a type. + + + Creates a blank instance for the current . + The declared type for the property. + The property name used in JSON serialization and deserialization. + + or is . + + cannot be used for serialization. + The instance has been locked for further modification. + A blank instance. + + + Creates a blank instance. + The type for which contract metadata is specified. + The instance the metadata is associated with. + + or is . + + cannot be used for serialization. + A blank instance. + + + Creates a blank instance. + The instance the metadata is associated with. + The type for which contract metadata is specified. + + is . + A blank instance. + + + Locks the current instance for further modification. + + + Gets the associated with the current type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Gets a value that indicates whether the current instance has been locked for modification. + + + Gets a value that describes the kind of contract metadata that the current instance specifies. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + An invalid value was specified. + + + Gets or sets a callback to be invoked after deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked after serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets the value associated with the current instance. + + + Gets or sets the from which this metadata instance originated. + The instance has been locked for further modification. + + + Gets or sets a configuration object specifying polymorphism metadata. + + has been associated with a different instance. + The instance has been locked for further modification. + +-or- + +Polymorphic serialization is not supported for the current metadata . + + + Gets or sets the preferred value for properties contained in the type. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for JsonTypeInfoKind.Object. + Specified an invalid value. + + + Gets the list of metadata corresponding to the current type. + + + Gets the for which the JSON serialization contract is being defined. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for . + An invalid value was specified. + + + Provides JSON serialization-related metadata about a type. + The generic definition of the type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Serializes an instance of using values specified at design time. + + + Describes the kind of contract metadata a specifies. + + + Type is serialized as a dictionary with key/value pair entries. + + + Type is serialized as a collection with elements. + + + Type is either a simple value or uses a custom converter. + + + Type is serialized as an object with properties. + + + Contains utilities and combinators acting on . + + + Combines multiple sources into one. + Sequence of contract resolvers to be queried for metadata. + + is . + A combining results from . + + + Creates a resolver and applies modifications to the metadata generated by the source . + The source resolver generating metadata. + The delegate that modifies non- results. + A new instance with modifications applied. + + + Defines how the deals with references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Returns the used for each serialization call. + The resolver to use for serialization and deserialization. + + + Gets an object that indicates whether an object is ignored when a reference cycle is detected during serialization. + + + Gets an object that indicates whether metadata properties are honored when JSON objects and arrays are deserialized into reference types, and written when reference types are serialized. This is necessary to create round-trippable JSON from objects that contain cycles or duplicate references. + + + Defines how the deals with references on serialization and deserialization. + The type of the to create on each serialization or deserialization call. + + + Initializes a new instance of the generic class that can create a instance of the specified type. + + + Creates a new of type used for each serialization call. + The new resolver to use for serialization and deserialization. + + + Defines how the deals with references on serialization and deserialization. + Defines the core behavior of preserving references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Adds an entry to the bag of references using the specified id and value. + This method gets called when an $id metadata property from a JSON object is read. + The identifier of the JSON object or array. + The value of the CLR reference type object that results from parsing the JSON object. + + + Gets the reference identifier of the specified value if exists; otherwise a new id is assigned. + This method gets called before a CLR object is written so we can decide whether to write $id and enumerate the rest of its properties or $ref and step into the next object. + The value of the CLR reference type object to get an id for. + When this method returns, if a reference to value already exists; otherwise, . + The reference id for the specified object. + + + Returns the CLR reference type object related to the specified reference id. + This method gets called when $ref metadata property is read. + The reference id related to the returned object. + The reference type object related to the specified reference id. + + + Provides a high-performance API for forward-only, read-only access to UTF-8 encoded JSON text. + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Copies the current JSON token value from the source, unescaped, as UTF-8 bytes to a buffer. + A buffer to write the unescaped UTF-8 bytes into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of bytes written to . + + + Copies the current JSON token value from the source, unescaped, as UTF-16 characters to a buffer. + A buffer to write the transcoded UTF-16 characters into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of characters written to . + + + Reads the next JSON token value from the source as a . + The value of the JSON token isn't a Boolean value (that is, or ). + + if the is ; if the is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Byte.MinValue or greater than Byte.MaxValue. + The value of the UTF-8 encoded token. + + + Parses the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array. + The type of the JSON token is not a . + The value is not encoded as Base64 text, so it can't be decoded to bytes. + +-or- + +The value contains invalid or more than two padding characters. + +-or- + +The value is incomplete. That is, the JSON string length is not a multiple of 4. + The byte array that represents the current JSON token value. + + + Parses the current JSON token value from the source as a comment and transcodes it as a . + The JSON token is not a comment. + The comment that represents the current JSON token value. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time offset, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Decimal.MinValue or greater than Decimal.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Double.MinValue or greater than Double.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value is in an unsupported format for a Guid. + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + The GUID value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Int16.MinValue or greater than Int16.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int32.MinValue or greater than Int32.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int64.MinValue or greater than Int64.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Parses the current JSON token value from the source as an . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than SByte.MinValue or greater than SByte.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Single.MinValue or greater than Single.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source unescaped and transcodes it as a string. + The JSON token value isn't a string (that is, not a , , or ). + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The token value parsed to a string, or if is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than UInt16.MinValue or greater than UInt16.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt32.MinValue or greater than UInt32.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt64.MinValue or greater than UInt64.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token from the input source. + An invalid JSON token according to the JSON RFC is encountered. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + if the token was read successfully; otherwise, . + + + Skips the children of the current JSON token. + The reader was given partial data with more data to follow (that is, is ). + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decoded binary representation of the Base64 text. + The JSON token is not a . + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to skip the children of the current JSON token. + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or - + +The current depth exceeds the recursive limit set by the maximum depth. + + if there was enough data for the children to be skipped successfully; otherwise, . + + + Compares the UTF-8 encoded text in a read-only byte span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The UTF-8 encoded text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the UTF-8 encoded lookup text; otherwise, . + + + Compares the text in a read-only character span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Compares the string text to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Gets the total number of bytes consumed so far by this instance of the . + The total number of bytes consumed so far. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the current state to pass to a constructor with more data. + The current reader state. + + + Gets a value that indicates which Value property to use to get the token value. + + if should be used to get the token value; if should be used instead. + + + Gets a value that indicates whether all the JSON data was provided or there is more data to come. + + if the reader was constructed with the input span or sequence containing the entire JSON data to process; if the reader was constructed with an input span or sequence that may contain partial JSON data with more data to follow. + + + Gets the current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + The current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + + + Gets the index that the last processed JSON token starts at (within the given UTF-8 encoded input text), skipping any white space. + The starting index of the last processed JSON token within the given UTF-8 encoded input text. + + + Gets the type of the last processed JSON token in the UTF-8 encoded JSON text. + The type of the last processed JSON token. + + + Gets a value that indicates whether the current or properties contain escape sequences per RFC 8259 section 7, and therefore require unescaping before being consumed. + + + Gets the raw value of the last processed token as a ReadOnlySequence<byte> slice of the input payload, only if the token is contained within multiple segments. + A byte read-only sequence. + + + Gets the raw value of the last processed token as a ReadOnlySpan<byte> slice of the input payload, if the token fits in a single segment or if the reader was constructed with a JSON payload contained in a ReadOnlySpan<byte>. + A read-only span of bytes. + + + Provides a high-performance API for forward-only, non-cached writing of UTF-8 encoded JSON text. + + + Initializes a new instance of the class using the specified to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Initializes a new instance of the class using the specified stream to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + + + Asynchronously commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + A task representing the asynchronous dispose operation. + + + Commits the JSON text written so far, which makes it visible to the output destination. + This instance has been disposed. + + + Asynchronously commits the JSON text written so far, which makes it visible to the output destination. + The token to monitor for cancellation requests. The default value is . + This instance has been disposed. + A task representing the asynchronous flush operation. + + + Resets the internal state of this instance so that it can be reused. + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The JSON-encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the raw bytes value as a Base64 encoded JSON string as an element of a JSON array. + The binary data to be written as a Base64 encoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON literal true or false) as an element of a JSON array. + The value to be written as a JSON literal true or false as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value as a JSON comment. + The UTF-8 encoded value to be written as a JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a UTF-16 text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a string text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + The parameter is . + + + Writes the end of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the end of a JSON object. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and the JSON literal null as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the JSON literal null as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the UTF-8 property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + is . + + + Writes the pre-encoded property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; to skip validation. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input + is not a valid, complete, single JSON value according to the JSON RFC + or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + + is . + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the beginning of a JSON array. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON array to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON array with a pre-encoded property name as the key. + The JSON encoded property name of the JSON array to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the beginning of a JSON object. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON object with a pre-encoded property name as the key. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the UTF-8 property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value (as a JSON string) as an element of a JSON array. + The UTF-8 encoded value to be written as a JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a string text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded text value (as a JSON string) as an element of a JSON array. + The JSON encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + Validation is enabled, and the write operation would produce invalid JSON. + + + Gets the total number of bytes committed to the output by the current instance so far. + The total number of bytes committed to the output by the so far. + + + Gets the number of bytes written by the so far that have not yet been flushed to the output and committed. + The number of bytes written so far by the that have not yet been flushed to the output and committed. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the custom behavior when writing JSON using this instance, which indicates whether to format the output while writing, whether to skip structural JSON validation, and which characters to escape. + The custom behavior of this instance of the writer for formatting, validating, and escaping. + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/System.Threading.Channels.dll b/db_lab/bin/Debug/System.Threading.Channels.dll new file mode 100644 index 0000000..fee8f5a Binary files /dev/null and b/db_lab/bin/Debug/System.Threading.Channels.dll differ diff --git a/db_lab/bin/Debug/System.Threading.Channels.xml b/db_lab/bin/Debug/System.Threading.Channels.xml new file mode 100644 index 0000000..20275dc --- /dev/null +++ b/db_lab/bin/Debug/System.Threading.Channels.xml @@ -0,0 +1,243 @@ + + + + System.Threading.Channels + + + + Specifies the behavior to use when writing to a bounded channel that is already full. + + + Removes and ignores the newest item in the channel in order to make room for the item being written. + + + Removes and ignores the oldest item in the channel in order to make room for the item being written. + + + Drops the item being written. + + + Waits for space to be available in order to complete the write operation. + + + Provides options that control the behavior of bounded instances. + + + Initializes the options. + The maximum number of items the bounded channel may store. + + + Gets or sets the maximum number of items the bounded channel may store. + + + Gets or sets the behavior incurred by write operations when the channel is full. + + + Provides static methods for creating channels. + + + Creates a channel with the specified maximum capacity. + The maximum number of items the channel may store. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel with the specified maximum capacity. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel subject to the provided options. + Options that guide the behavior of the channel. + Delegate that will be called when item is being dropped from channel. See . + Specifies the type of data in the channel. + The created channel. + + + Creates an unbounded channel usable by any number of readers and writers concurrently. + The type of data in the channel. + The created channel. + + + Creates an unbounded channel subject to the provided options. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Provides a base class for channels that support reading and writing elements of type . + Specifies the type of data readable and writable in the channel. + + + Initializes an instance of the class. + + + Provides a base class for channels that support reading elements of type and writing elements of type . + Specifies the type of data that may be written to the channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Implicit cast from a to its readable half. + The being cast. + The readable half. + + + Implicit cast from a to its writable half. + The being cast. + The writable half. + + + Gets the readable half of this channel. + + + Gets the writable half of this channel. + + + Exception thrown when a channel is used after it's been closed. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The exception that is the cause of this exception. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data. + The contextual information about the source or destination. + + + Initializes a new instance of the class. + The message that describes the error. + + + Initializes a new instance of the class. + The message that describes the error. + The exception that is the cause of this exception. + + + Provides options that control the behavior of channel instances. + + + Initializes an instance of the class. + + + + if operations performed on a channel may synchronously invoke continuations subscribed to + notifications of pending async operations; if all continuations should be invoked asynchronously. + + + + readers from the channel guarantee that there will only ever be at most one read operation at a time; + if no such constraint is guaranteed. + + + + if writers to the channel guarantee that there will only ever be at most one write operation + at a time; if no such constraint is guaranteed. + + + Provides a base class for reading from a channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Creates an that enables reading all of the data from the channel. + The cancellation token to use to cancel the enumeration. If data is immediately ready for reading, then that data may be yielded even after cancellation has been requested. + The created async enumerable. + + + Asynchronously reads an item from the channel. + A used to cancel the read operation. + A that represents the asynchronous read operation. + + + Attempts to peek at an item from the channel. + The peeked item, or a default value if no item could be peeked. + + if an item was read; otherwise, . + + + Attempts to read an item from the channel. + The read item, or a default value if no item could be read. + + if an item was read; otherwise, . + + + Returns a that will complete when data is available to read. + A used to cancel the wait operation. + + A that will complete with a result when data is available to read + or with a result when no further data will ever be available to be read due to the channel completing successfully. + If the channel completes with an exception, the task will also complete with an exception. + + + + Gets a value that indicates whether is available for use on this instance. + + + Gets a value that indicates whether is available for use on this instance. + + if peeking is supported by this channel instance; otherwise. + + + Gets a that completes when no more data will ever + be available to be read from this channel. + + + Gets the current number of items available from this channel reader. + Counting is not supported on this instance. + + + Provides a base class for writing to a channel. + Specifies the type of data that may be written to the channel. + + + Initializes an instance of the class. + + + Mark the channel as being complete, meaning no more items will be written to it. + Optional Exception indicating a failure that's causing the channel to complete. + The channel has already been marked as complete. + + + Attempts to mark the channel as being completed, meaning no more data will be written to it. + An indicating the failure causing no more data to be written, or null for success. + + if this operation successfully completes the channel; otherwise, if the channel could not be marked for completion, + for example due to having already been marked as such, or due to not supporting completion. + . + + + Attempts to write the specified item to the channel. + The item to write. + + if the item was written; otherwise, . + + + Returns a that will complete when space is available to write an item. + A used to cancel the wait operation. + A that will complete with a result when space is available to write an item + or with a result when no further writing will be permitted. + + + Asynchronously writes an item to the channel. + The value to write to the channel. + A used to cancel the write operation. + A that represents the asynchronous write operation. + + + Provides options that control the behavior of unbounded instances. + + + Initializes a new instance of the class. + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/System.Threading.Tasks.Extensions.dll b/db_lab/bin/Debug/System.Threading.Tasks.Extensions.dll new file mode 100644 index 0000000..eeec928 Binary files /dev/null and b/db_lab/bin/Debug/System.Threading.Tasks.Extensions.dll differ diff --git a/db_lab/bin/Debug/System.Threading.Tasks.Extensions.xml b/db_lab/bin/Debug/System.Threading.Tasks.Extensions.xml new file mode 100644 index 0000000..5e02a99 --- /dev/null +++ b/db_lab/bin/Debug/System.Threading.Tasks.Extensions.xml @@ -0,0 +1,166 @@ + + + System.Threading.Tasks.Extensions + + + + + + + + + + + + + + + + + + + Provides a value type that wraps a and a TResult, only one of which is used. + The result. + + + Initializes a new instance of the class using the supplied task that represents the operation. + The task. + The task argument is null. + + + Initializes a new instance of the class using the supplied result of a successful operation. + The result. + + + Retrieves a object that represents this . + The object that is wrapped in this if one exists, or a new object that represents the result. + + + Configures an awaiter for this value. + true to attempt to marshal the continuation back to the captured context; otherwise, false. + The configured awaiter. + + + Creates a method builder for use with an async method. + The created builder. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Creates an awaiter for this value. + The awaiter. + + + Returns the hash code for this instance. + The hash code for the current object. + + + Gets a value that indicates whether this object represents a canceled operation. + true if this object represents a canceled operation; otherwise, false. + + + Gets a value that indicates whether this object represents a completed operation. + true if this object represents a completed operation; otherwise, false. + + + Gets a value that indicates whether this object represents a successfully completed operation. + true if this object represents a successfully completed operation; otherwise, false. + + + Gets a value that indicates whether this object represents a failed operation. + true if this object represents a failed operation; otherwise, false. + + + Compares two values for equality. + The first value to compare. + The second value to compare. + true if the two values are equal; otherwise, false. + + + Determines whether two values are unequal. + The first value to compare. + The seconed value to compare. + true if the two values are not equal; otherwise, false. + + + Gets the result. + The result. + + + Returns a string that represents the current object. + A string that represents the current object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/System.ValueTuple.dll b/db_lab/bin/Debug/System.ValueTuple.dll new file mode 100644 index 0000000..4ce28fd Binary files /dev/null and b/db_lab/bin/Debug/System.ValueTuple.dll differ diff --git a/db_lab/bin/Debug/System.ValueTuple.xml b/db_lab/bin/Debug/System.ValueTuple.xml new file mode 100644 index 0000000..1151832 --- /dev/null +++ b/db_lab/bin/Debug/System.ValueTuple.xml @@ -0,0 +1,8 @@ + + + + System.ValueTuple + + + + diff --git a/db_lab/bin/Debug/db_lab.exe b/db_lab/bin/Debug/db_lab.exe new file mode 100644 index 0000000..c3a8d3c Binary files /dev/null and b/db_lab/bin/Debug/db_lab.exe differ diff --git a/db_lab/bin/Debug/db_lab.exe.config b/db_lab/bin/Debug/db_lab.exe.config new file mode 100644 index 0000000..1bdad40 --- /dev/null +++ b/db_lab/bin/Debug/db_lab.exe.config @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/db_lab/bin/Debug/db_lab.pdb b/db_lab/bin/Debug/db_lab.pdb new file mode 100644 index 0000000..e9cd83e Binary files /dev/null and b/db_lab/bin/Debug/db_lab.pdb differ diff --git a/db_lab/db_lab.csproj b/db_lab/db_lab.csproj new file mode 100644 index 0000000..ef84a3b --- /dev/null +++ b/db_lab/db_lab.csproj @@ -0,0 +1,151 @@ + + + + + Debug + AnyCPU + {27C228AD-7C9B-42AE-867B-8A592A3F4EE8} + WinExe + db_lab + db_lab + v4.7.2 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll + + + ..\packages\Microsoft.Bcl.HashCode.1.1.1\lib\net461\Microsoft.Bcl.HashCode.dll + + + ..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll + + + ..\packages\Microsoft.Extensions.Logging.Abstractions.8.0.0\lib\net462\Microsoft.Extensions.Logging.Abstractions.dll + + + ..\packages\Npgsql.8.0.3\lib\netstandard2.0\Npgsql.dll + + + + ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + ..\packages\System.Collections.Immutable.8.0.0\lib\net462\System.Collections.Immutable.dll + + + + ..\packages\System.Diagnostics.DiagnosticSource.8.0.0\lib\net462\System.Diagnostics.DiagnosticSource.dll + + + ..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + + + ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll + + + ..\packages\System.Text.Encodings.Web.8.0.0\lib\net462\System.Text.Encodings.Web.dll + + + ..\packages\System.Text.Json.8.0.0\lib\net462\System.Text.Json.dll + + + ..\packages\System.Threading.Channels.8.0.0\lib\net462\System.Threading.Channels.dll + + + ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + + ..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll + + + + + + + + + + + + + + Form + + + DataForm.cs + + + Form + + + Form1.cs + + + Form + + + GuideForm.cs + + + + + Form + + + RaportForm.cs + + + Form1.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + \ No newline at end of file diff --git a/db_lab/docker-compose.yaml b/db_lab/docker-compose.yaml new file mode 100644 index 0000000..f84be54 --- /dev/null +++ b/db_lab/docker-compose.yaml @@ -0,0 +1,30 @@ +version: '3' +services: + postgres: + image: postgres:latest + restart: always + ports: + - 5432:5432 + environment: + POSTGRES_DB: SQL_Servers + POSTGRES_PASSWORD: postgres + POSTGRES_USER: postgres + volumes: + - postgres:/var/lib/postgresql/data + + pgadmin: + image: dpage/pgadmin4:4.16 + environment: + PGADMIN_DEFAULT_EMAIL: admin@pgadmin.com + PGADMIN_DEFAULT_PASSWORD: password + PGADMIN_LISTEN_PORT: 80 + ports: + - 15432:80 + volumes: + - pgadmin:/var/lib/pgadmin + depends_on: + - postgres + +volumes: + postgres: + pgadmin: diff --git a/db_lab/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs b/db_lab/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs new file mode 100644 index 0000000..3871b18 --- /dev/null +++ b/db_lab/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] diff --git a/db_lab/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/db_lab/obj/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000..d5da7b9 Binary files /dev/null and b/db_lab/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/db_lab/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/db_lab/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..a607f1f Binary files /dev/null and b/db_lab/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/db_lab/obj/Debug/db_lab.Form1.resources b/db_lab/obj/Debug/db_lab.Form1.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/db_lab/obj/Debug/db_lab.Form1.resources differ diff --git a/db_lab/obj/Debug/db_lab.Properties.Resources.resources b/db_lab/obj/Debug/db_lab.Properties.Resources.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/db_lab/obj/Debug/db_lab.Properties.Resources.resources differ diff --git a/db_lab/obj/Debug/db_lab.csproj.AssemblyReference.cache b/db_lab/obj/Debug/db_lab.csproj.AssemblyReference.cache new file mode 100644 index 0000000..7cef90f Binary files /dev/null and b/db_lab/obj/Debug/db_lab.csproj.AssemblyReference.cache differ diff --git a/db_lab/obj/Debug/db_lab.csproj.CopyComplete b/db_lab/obj/Debug/db_lab.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/db_lab/obj/Debug/db_lab.csproj.CoreCompileInputs.cache b/db_lab/obj/Debug/db_lab.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..8112610 --- /dev/null +++ b/db_lab/obj/Debug/db_lab.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +6cfe98626599e0585a6a4cbde9575a47698b081aa3748f1df4309e2ac8c0a680 diff --git a/db_lab/obj/Debug/db_lab.csproj.FileListAbsolute.txt b/db_lab/obj/Debug/db_lab.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..fe09417 --- /dev/null +++ b/db_lab/obj/Debug/db_lab.csproj.FileListAbsolute.txt @@ -0,0 +1,43 @@ +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\db_lab.exe.config +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\db_lab.exe +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\db_lab.pdb +C:\Users\mit3t\source\repos\db_lab\db_lab\obj\Debug\db_lab.csproj.AssemblyReference.cache +C:\Users\mit3t\source\repos\db_lab\db_lab\obj\Debug\db_lab.Properties.Resources.resources +C:\Users\mit3t\source\repos\db_lab\db_lab\obj\Debug\db_lab.csproj.GenerateResource.cache +C:\Users\mit3t\source\repos\db_lab\db_lab\obj\Debug\db_lab.csproj.CoreCompileInputs.cache +C:\Users\mit3t\source\repos\db_lab\db_lab\obj\Debug\db_lab.exe +C:\Users\mit3t\source\repos\db_lab\db_lab\obj\Debug\db_lab.pdb +C:\Users\mit3t\source\repos\db_lab\db_lab\obj\Debug\db_lab.Form1.resources +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\Microsoft.Bcl.AsyncInterfaces.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\Microsoft.Bcl.HashCode.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\Microsoft.Extensions.DependencyInjection.Abstractions.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\Microsoft.Extensions.Logging.Abstractions.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\Npgsql.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Buffers.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Collections.Immutable.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Diagnostics.DiagnosticSource.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Memory.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Numerics.Vectors.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Runtime.CompilerServices.Unsafe.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Text.Encodings.Web.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Text.Json.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Threading.Channels.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Threading.Tasks.Extensions.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.ValueTuple.dll +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\Microsoft.Bcl.AsyncInterfaces.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\Microsoft.Bcl.HashCode.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\Microsoft.Extensions.DependencyInjection.Abstractions.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\Microsoft.Extensions.Logging.Abstractions.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\Npgsql.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Buffers.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Collections.Immutable.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Diagnostics.DiagnosticSource.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Memory.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Numerics.Vectors.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Runtime.CompilerServices.Unsafe.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Text.Encodings.Web.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Text.Json.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Threading.Channels.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.Threading.Tasks.Extensions.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\bin\Debug\System.ValueTuple.xml +C:\Users\mit3t\source\repos\db_lab\db_lab\obj\Debug\db_lab.csproj.CopyComplete diff --git a/db_lab/obj/Debug/db_lab.csproj.GenerateResource.cache b/db_lab/obj/Debug/db_lab.csproj.GenerateResource.cache new file mode 100644 index 0000000..f407cb6 Binary files /dev/null and b/db_lab/obj/Debug/db_lab.csproj.GenerateResource.cache differ diff --git a/db_lab/obj/Debug/db_lab.exe b/db_lab/obj/Debug/db_lab.exe new file mode 100644 index 0000000..c3a8d3c Binary files /dev/null and b/db_lab/obj/Debug/db_lab.exe differ diff --git a/db_lab/obj/Debug/db_lab.pdb b/db_lab/obj/Debug/db_lab.pdb new file mode 100644 index 0000000..e9cd83e Binary files /dev/null and b/db_lab/obj/Debug/db_lab.pdb differ diff --git a/db_lab/packages.config b/db_lab/packages.config new file mode 100644 index 0000000..4b1a231 --- /dev/null +++ b/db_lab/packages.config @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/.signature.p7s b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/.signature.p7s new file mode 100644 index 0000000..f954467 Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/.signature.p7s differ diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/Icon.png b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/Icon.png new file mode 100644 index 0000000..a0f1fdb Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/Icon.png differ diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/LICENSE.TXT b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/Microsoft.Bcl.AsyncInterfaces.8.0.0.nupkg b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/Microsoft.Bcl.AsyncInterfaces.8.0.0.nupkg new file mode 100644 index 0000000..f707fc6 Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/Microsoft.Bcl.AsyncInterfaces.8.0.0.nupkg differ diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/PACKAGE.md b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/PACKAGE.md new file mode 100644 index 0000000..e0c6e8a --- /dev/null +++ b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/PACKAGE.md @@ -0,0 +1,64 @@ +## About + +As of C# 8, the C# language has support for producing and consuming asynchronous iterators. The library types in support of those features are available in .NET Core 3.0 and newer as well as in .NET Standard 2.1. This library provides the necessary definitions of those types to support these language features on .NET Framework and on .NET Standard 2.0. This library is not necessary nor recommended when targeting versions of .NET that include the relevant support. + +## Key Features + + + +* Enables the use of C# async iterators on older .NET platforms + +## How to Use + + + +```C# +using System; +using System.Collections.Generic; +using System.Threading.Tasks; + +internal static class Program +{ + private static async Task Main() + { + Console.WriteLine("Starting..."); + await foreach (var value in GetValuesAsync()) + { + Console.WriteLine(value); + } + Console.WriteLine("Finished!"); + + static async IAsyncEnumerable GetValuesAsync() + { + for (int i = 0; i < 10; i++) + { + await Task.Delay(TimeSpan.FromSeconds(1)); + yield return i; + } + } + } +} +``` + +## Main Types + + + +The main types provided by this library are: + +* `IAsyncEnumerable` +* `IAsyncEnumerator` +* `IAsyncDisposable` + +## Additional Documentation + + + +* [C# Feature Specification](https://learn.microsoft.com/dotnet/csharp/language-reference/proposals/csharp-8.0/async-streams) +* [Walkthrough article](https://learn.microsoft.com/archive/msdn-magazine/2019/november/csharp-iterating-with-async-enumerables-in-csharp-8) + +## Feedback & Contributing + + + +Microsoft.Bcl.AsyncInterfaces is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime). \ No newline at end of file diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/THIRD-PARTY-NOTICES.TXT b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..4b40333 --- /dev/null +++ b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,1272 @@ +.NET Runtime uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Runtime software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +https://www.unicode.org/license.html + +Copyright © 1991-2022 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +https://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.13, October 13th, 2022 + + Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR +COPYRIGHT HOLDERS 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. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for vectorized hex parsing +-------------------------------------------------------- + +Copyright (c) 2022, Geoff Langdale +Copyright (c) 2022, Wojciech Mula +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for RFC 3492 +--------------------------- + +The punycode implementation is based on the sample code in RFC 3492 + +Copyright (C) The Internet Society (2003). All Rights Reserved. + +This document and translations of it may be copied and furnished to +others, and derivative works that comment on or otherwise explain it +or assist in its implementation may be prepared, copied, published +and distributed, in whole or in part, without restriction of any +kind, provided that the above copyright notice and this paragraph are +included on all such copies and derivative works. However, this +document itself may not be modified in any way, such as by removing +the copyright notice or references to the Internet Society or other +Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for +copyrights defined in the Internet Standards process must be +followed, or as required to translate it into languages other than +English. + +The limited permissions granted above are perpetual and will not be +revoked by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an +"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Copyright(C) The Internet Society 1997. All Rights Reserved. + +This document and translations of it may be copied and furnished to others, +and derivative works that comment on or otherwise explain it or assist in +its implementation may be prepared, copied, published and distributed, in +whole or in part, without restriction of any kind, provided that the above +copyright notice and this paragraph are included on all such copies and +derivative works.However, this document itself may not be modified in any +way, such as by removing the copyright notice or references to the Internet +Society or other Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for copyrights +defined in the Internet Standards process must be followed, or as required +to translate it into languages other than English. + +The limited permissions granted above are perpetual and will not be revoked +by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an "AS IS" +basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE +DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO +ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY +RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A +PARTICULAR PURPOSE. + +License notice for Algorithm from RFC 4122 - +A Universally Unique IDentifier (UUID) URN Namespace +---------------------------------------------------- + +Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. +Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & +Digital Equipment Corporation, Maynard, Mass. +Copyright (c) 1998 Microsoft. +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: permission to use, copy, +modify, and distribute this file for any purpose is hereby +granted without fee, provided that the above copyright notices and +this notice appears in all source code copies, and that none of +the names of Open Software Foundation, Inc., Hewlett-Packard +Company, Microsoft, or Digital Equipment Corporation be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Neither Open Software +Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital +Equipment Corporation makes any representations about the +suitability of this software for any purpose." + +License notice for The LLVM Compiler Infrastructure (Legacy License) +-------------------------------------------------------------------- + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +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 +CONTRIBUTORS OR COPYRIGHT HOLDERS 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 WITH THE +SOFTWARE. + +License notice for Bob Jenkins +------------------------------ + +By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this +code any way you wish, private, educational, or commercial. It's free. + +License notice for Greg Parker +------------------------------ + +Greg Parker gparker@cs.stanford.edu December 2000 +This code is in the public domain and may be copied or modified without +permission. + +License notice for libunwind based code +---------------------------------------- + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for Printing Floating-Point Numbers (Dragon4) +------------------------------------------------------------ + +/****************************************************************************** + Copyright (c) 2014 Ryan Juckett + http://www.ryanjuckett.com/ + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source + distribution. +******************************************************************************/ + +License notice for Printing Floating-point Numbers (Grisu3) +----------------------------------------------------------- + +Copyright 2012 the V8 project authors. All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xxHash +------------------------- + +xxHash - Extremely Fast Hash algorithm +Header File +Copyright (C) 2012-2021 Yann Collet + +BSD 2-Clause License (https://www.opensource.org/licenses/bsd-license.php) + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +You can contact the author at: + - xxHash homepage: https://www.xxhash.com + - xxHash source repository: https://github.com/Cyan4973/xxHash + +License notice for Berkeley SoftFloat Release 3e +------------------------------------------------ + +https://github.com/ucb-bar/berkeley-softfloat-3 +https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt + +License for Berkeley SoftFloat Release 3e + +John R. Hauser +2018 January 20 + +The following applies to the whole of SoftFloat Release 3e as well as to +each source file individually. + +Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the +University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions, and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE +DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xoshiro RNGs +-------------------------------- + +Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org) + +To the extent possible under law, the author has dedicated all copyright +and related and neighboring rights to this software to the public domain +worldwide. This software is distributed without any warranty. + +See . + +License for fastmod (https://github.com/lemire/fastmod), ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data) and fastrange (https://github.com/lemire/fastrange) +-------------------------------------- + + Copyright 2018 Daniel Lemire + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +License for sse4-strstr (https://github.com/WojciechMula/sse4-strstr) +-------------------------------------- + + Copyright (c) 2008-2016, Wojciech Mula + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for The C++ REST SDK +----------------------------------- + +C++ REST SDK + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for MessagePack-CSharp +------------------------------------- + +MessagePack for C# + +MIT License + +Copyright (c) 2017 Yoshifumi Kawai + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for lz4net +------------------------------------- + +lz4net + +Copyright (c) 2013-2017, Milosz Krajewski + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Nerdbank.Streams +----------------------------------- + +The MIT License (MIT) + +Copyright (c) Andrew Arnott + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for RapidJSON +---------------------------- + +Tencent is pleased to support the open source community by making RapidJSON available. + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. + +Licensed under the MIT License (the "License"); you may not use this file except +in compliance with the License. You may obtain a copy of the License at + +http://opensource.org/licenses/MIT + +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. + +License notice for DirectX Math Library +--------------------------------------- + +https://github.com/microsoft/DirectXMath/blob/master/LICENSE + + The MIT License (MIT) + +Copyright (c) 2011-2020 Microsoft Corp + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +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 OR COPYRIGHT +HOLDERS 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. + +License notice for ldap4net +--------------------------- + +The MIT License (MIT) + +Copyright (c) 2018 Alexander Chermyanin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for vectorized sorting code +------------------------------------------ + +MIT License + +Copyright (c) 2020 Dan Shechter + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for musl +----------------------- + +musl as a whole is licensed under the following standard MIT license: + +Copyright © 2005-2020 Rich Felker, et al. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + + +License notice for "Faster Unsigned Division by Constants" +------------------------------ + +Reference implementations of computing and using the "magic number" approach to dividing +by constants, including codegen instructions. The unsigned division incorporates the +"round down" optimization per ridiculous_fish. + +This is free and unencumbered software. Any copyright is dedicated to the Public Domain. + + +License notice for mimalloc +----------------------------------- + +MIT License + +Copyright (c) 2019 Microsoft Corporation, Daan Leijen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for The LLVM Project +----------------------------------- + +Copyright 2019 LLVM Project + +Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions; +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +https://llvm.org/LICENSE.txt + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +License notice for Apple header files +------------------------------------- + +Copyright (c) 1980, 1986, 1993 + The Regents of the University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. +4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +License notice for JavaScript queues +------------------------------------- + +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. + +Statement of Purpose +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: +the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; +moral rights retained by the original author(s) and/or performer(s); +publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; +rights protecting the extraction, dissemination, use and reuse of data in a Work; +database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and +other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. +4. Limitations and Disclaimers. +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. + + +License notice for FastFloat algorithm +------------------------------------- +MIT License +Copyright (c) 2021 csFastFloat authors +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License notice for MsQuic +-------------------------------------- + +Copyright (c) Microsoft Corporation. +Licensed under the MIT License. + +Available at +https://github.com/microsoft/msquic/blob/main/LICENSE + +License notice for m-ou-se/floatconv +------------------------------- + +Copyright (c) 2020 Mara Bos +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for code from The Practice of Programming +------------------------------- + +Copyright (C) 1999 Lucent Technologies + +Excerpted from 'The Practice of Programming +by Brian W. Kernighan and Rob Pike + +You may use this code for any purpose, as long as you leave the copyright notice and book citation attached. + +Notice for Euclidean Affine Functions and Applications to Calendar +Algorithms +------------------------------- + +Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar +Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf + +License notice for amd/aocl-libm-ose +------------------------------- + +Copyright (C) 2008-2020 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +License notice for fmtlib/fmt +------------------------------- + +Formatting library for C++ + +Copyright (c) 2012 - present, Victor Zverovich + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License for Jb Evain +--------------------- + +Copyright (c) 2006 Jb Evain (jbevain@gmail.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +License for MurmurHash3 +-------------------------------------- + +https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp + +MurmurHash3 was written by Austin Appleby, and is placed in the public +domain. The author hereby disclaims copyright to this source + +License for Fast CRC Computation +-------------------------------------- + +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc32_ieee_by4.asm +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc64_ecma_norm_by8.asm + +Copyright(c) 2011-2015 Intel Corporation All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License for C# Implementation of Fast CRC Computation +----------------------------------------------------- + +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/src/ImageSharp/Formats/Png/Zlib/Crc32.cs + +Copyright (c) Six Labors. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/LICENSE diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets new file mode 100644 index 0000000..81fa271 --- /dev/null +++ b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/buildTransitive/net462/_._ b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/buildTransitive/net462/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.dll b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.dll new file mode 100644 index 0000000..6031ba1 Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.dll differ diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.xml b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.xml new file mode 100644 index 0000000..e75808a --- /dev/null +++ b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.xml @@ -0,0 +1,417 @@ + + + + Microsoft.Bcl.AsyncInterfaces + + + + Provides the core logic for implementing a manual-reset or . + + + + + The callback to invoke when the operation completes if was called before the operation completed, + or if the operation completed before a callback was supplied, + or null if a callback hasn't yet been provided and the operation hasn't yet completed. + + + + State to pass to . + + + to flow to the callback, or null if no flowing is required. + + + + A "captured" or with which to invoke the callback, + or null if no special context is required. + + + + Whether the current operation has completed. + + + The result with which the operation succeeded, or the default value if it hasn't yet completed or failed. + + + The exception with which the operation failed, or null if it hasn't yet completed or completed successfully. + + + The current version of this value, used to help prevent misuse. + + + Gets or sets whether to force continuations to run asynchronously. + Continuations may run asynchronously if this is false, but they'll never run synchronously if this is true. + + + Resets to prepare for the next operation. + + + Completes with a successful result. + The result. + + + Complets with an error. + + + + Gets the operation version. + + + Gets the status of the operation. + Opaque value that was provided to the 's constructor. + + + Gets the result of the operation. + Opaque value that was provided to the 's constructor. + + + Schedules the continuation action for this operation. + The continuation to invoke when the operation has completed. + The state object to pass to when it's invoked. + Opaque value that was provided to the 's constructor. + The flags describing the behavior of the continuation. + + + Ensures that the specified token matches the current version. + The token supplied by . + + + Signals that the operation has completed. Invoked after the result or error has been set. + + + + Invokes the continuation with the appropriate captured context / scheduler. + This assumes that if is not null we're already + running within that . + + + + Provides a set of static methods for configuring -related behaviors on asynchronous enumerables and disposables. + + + Configures how awaits on the tasks returned from an async disposable will be performed. + The source async disposable. + Whether to capture and marshal back to the current context. + The configured async disposable. + + + Configures how awaits on the tasks returned from an async iteration will be performed. + The type of the objects being iterated. + The source enumerable being iterated. + Whether to capture and marshal back to the current context. + The configured enumerable. + + + Sets the to be passed to when iterating. + The type of the objects being iterated. + The source enumerable being iterated. + The to use. + The configured enumerable. + + + Represents a builder for asynchronous iterators. + + + Creates an instance of the struct. + The initialized instance. + + + Invokes on the state machine while guarding the . + The type of the state machine. + The state machine instance, passed by reference. + + + Schedules the state machine to proceed to the next action when the specified awaiter completes. + The type of the awaiter. + The type of the state machine. + The awaiter. + The state machine. + + + Schedules the state machine to proceed to the next action when the specified awaiter completes. + The type of the awaiter. + The type of the state machine. + The awaiter. + The state machine. + + + Marks iteration as being completed, whether successfully or otherwise. + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + Indicates whether a method is an asynchronous iterator. + + + Initializes a new instance of the class. + The type object for the underlying state machine type that's used to implement a state machine method. + + + Provides a type that can be used to configure how awaits on an are performed. + + + Asynchronously releases the unmanaged resources used by the . + A task that represents the asynchronous dispose operation. + + + Provides an awaitable async enumerable that enables cancelable iteration and configured awaits. + + + Configures how awaits on the tasks returned from an async iteration will be performed. + Whether to capture and marshal back to the current context. + The configured enumerable. + This will replace any previous value set by for this iteration. + + + Sets the to be passed to when iterating. + The to use. + The configured enumerable. + This will replace any previous set by for this iteration. + + + Returns an enumerator that iterates asynchronously through collections that enables cancelable iteration and configured awaits. + An enumerator for the class. + + + Provides an awaitable async enumerator that enables cancelable iteration and configured awaits. + + + Advances the enumerator asynchronously to the next element of the collection. + + A that will complete with a result of true + if the enumerator was successfully advanced to the next element, or false if the enumerator has + passed the end of the collection. + + + + Gets the element in the collection at the current position of the enumerator. + + + + Performs application-defined tasks associated with freeing, releasing, or + resetting unmanaged resources asynchronously. + + + + Allows users of async-enumerable methods to mark the parameter that should receive the cancellation token value from . + + + Initializes a new instance of the class. + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + Exposes an enumerator that provides asynchronous iteration over values of a specified type. + The type of values to enumerate. + + + Returns an enumerator that iterates asynchronously through the collection. + A that may be used to cancel the asynchronous iteration. + An enumerator that can be used to iterate asynchronously through the collection. + + + Supports a simple asynchronous iteration over a generic collection. + The type of objects to enumerate. + + + Advances the enumerator asynchronously to the next element of the collection. + + A that will complete with a result of true if the enumerator + was successfully advanced to the next element, or false if the enumerator has passed the end + of the collection. + + + + Gets the element in the collection at the current position of the enumerator. + + + Provides a mechanism for releasing unmanaged resources asynchronously. + + + + Performs application-defined tasks associated with freeing, releasing, or + resetting unmanaged resources asynchronously. + + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + Specifies that an output may be null even if the corresponding type disallows it. + + + Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns. + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + + Gets the return value condition. + + + Specifies that the output will be non-null if the named parameter is non-null. + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + Applied to a method that will never return under any circumstance. + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + Initializes the attribute with the specified parameter value. + + The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to + the associated parameter matches this value. + + + + Gets the condition parameter value. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll new file mode 100644 index 0000000..c828d99 Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll differ diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml new file mode 100644 index 0000000..e75808a --- /dev/null +++ b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml @@ -0,0 +1,417 @@ + + + + Microsoft.Bcl.AsyncInterfaces + + + + Provides the core logic for implementing a manual-reset or . + + + + + The callback to invoke when the operation completes if was called before the operation completed, + or if the operation completed before a callback was supplied, + or null if a callback hasn't yet been provided and the operation hasn't yet completed. + + + + State to pass to . + + + to flow to the callback, or null if no flowing is required. + + + + A "captured" or with which to invoke the callback, + or null if no special context is required. + + + + Whether the current operation has completed. + + + The result with which the operation succeeded, or the default value if it hasn't yet completed or failed. + + + The exception with which the operation failed, or null if it hasn't yet completed or completed successfully. + + + The current version of this value, used to help prevent misuse. + + + Gets or sets whether to force continuations to run asynchronously. + Continuations may run asynchronously if this is false, but they'll never run synchronously if this is true. + + + Resets to prepare for the next operation. + + + Completes with a successful result. + The result. + + + Complets with an error. + + + + Gets the operation version. + + + Gets the status of the operation. + Opaque value that was provided to the 's constructor. + + + Gets the result of the operation. + Opaque value that was provided to the 's constructor. + + + Schedules the continuation action for this operation. + The continuation to invoke when the operation has completed. + The state object to pass to when it's invoked. + Opaque value that was provided to the 's constructor. + The flags describing the behavior of the continuation. + + + Ensures that the specified token matches the current version. + The token supplied by . + + + Signals that the operation has completed. Invoked after the result or error has been set. + + + + Invokes the continuation with the appropriate captured context / scheduler. + This assumes that if is not null we're already + running within that . + + + + Provides a set of static methods for configuring -related behaviors on asynchronous enumerables and disposables. + + + Configures how awaits on the tasks returned from an async disposable will be performed. + The source async disposable. + Whether to capture and marshal back to the current context. + The configured async disposable. + + + Configures how awaits on the tasks returned from an async iteration will be performed. + The type of the objects being iterated. + The source enumerable being iterated. + Whether to capture and marshal back to the current context. + The configured enumerable. + + + Sets the to be passed to when iterating. + The type of the objects being iterated. + The source enumerable being iterated. + The to use. + The configured enumerable. + + + Represents a builder for asynchronous iterators. + + + Creates an instance of the struct. + The initialized instance. + + + Invokes on the state machine while guarding the . + The type of the state machine. + The state machine instance, passed by reference. + + + Schedules the state machine to proceed to the next action when the specified awaiter completes. + The type of the awaiter. + The type of the state machine. + The awaiter. + The state machine. + + + Schedules the state machine to proceed to the next action when the specified awaiter completes. + The type of the awaiter. + The type of the state machine. + The awaiter. + The state machine. + + + Marks iteration as being completed, whether successfully or otherwise. + + + Gets an object that may be used to uniquely identify this builder to the debugger. + + + Indicates whether a method is an asynchronous iterator. + + + Initializes a new instance of the class. + The type object for the underlying state machine type that's used to implement a state machine method. + + + Provides a type that can be used to configure how awaits on an are performed. + + + Asynchronously releases the unmanaged resources used by the . + A task that represents the asynchronous dispose operation. + + + Provides an awaitable async enumerable that enables cancelable iteration and configured awaits. + + + Configures how awaits on the tasks returned from an async iteration will be performed. + Whether to capture and marshal back to the current context. + The configured enumerable. + This will replace any previous value set by for this iteration. + + + Sets the to be passed to when iterating. + The to use. + The configured enumerable. + This will replace any previous set by for this iteration. + + + Returns an enumerator that iterates asynchronously through collections that enables cancelable iteration and configured awaits. + An enumerator for the class. + + + Provides an awaitable async enumerator that enables cancelable iteration and configured awaits. + + + Advances the enumerator asynchronously to the next element of the collection. + + A that will complete with a result of true + if the enumerator was successfully advanced to the next element, or false if the enumerator has + passed the end of the collection. + + + + Gets the element in the collection at the current position of the enumerator. + + + + Performs application-defined tasks associated with freeing, releasing, or + resetting unmanaged resources asynchronously. + + + + Allows users of async-enumerable methods to mark the parameter that should receive the cancellation token value from . + + + Initializes a new instance of the class. + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + Exposes an enumerator that provides asynchronous iteration over values of a specified type. + The type of values to enumerate. + + + Returns an enumerator that iterates asynchronously through the collection. + A that may be used to cancel the asynchronous iteration. + An enumerator that can be used to iterate asynchronously through the collection. + + + Supports a simple asynchronous iteration over a generic collection. + The type of objects to enumerate. + + + Advances the enumerator asynchronously to the next element of the collection. + + A that will complete with a result of true if the enumerator + was successfully advanced to the next element, or false if the enumerator has passed the end + of the collection. + + + + Gets the element in the collection at the current position of the enumerator. + + + Provides a mechanism for releasing unmanaged resources asynchronously. + + + + Performs application-defined tasks associated with freeing, releasing, or + resetting unmanaged resources asynchronously. + + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + Specifies that an output may be null even if the corresponding type disallows it. + + + Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns. + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + + Gets the return value condition. + + + Specifies that the output will be non-null if the named parameter is non-null. + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + Applied to a method that will never return under any circumstance. + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + Initializes the attribute with the specified parameter value. + + The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to + the associated parameter matches this value. + + + + Gets the condition parameter value. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll new file mode 100644 index 0000000..421e812 Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll differ diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml new file mode 100644 index 0000000..217d476 --- /dev/null +++ b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml @@ -0,0 +1,124 @@ + + + + Microsoft.Bcl.AsyncInterfaces + + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/useSharedDesignerContext.txt b/packages/Microsoft.Bcl.AsyncInterfaces.8.0.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/.signature.p7s b/packages/Microsoft.Bcl.HashCode.1.1.1/.signature.p7s new file mode 100644 index 0000000..545771e Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/.signature.p7s differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/Icon.png b/packages/Microsoft.Bcl.HashCode.1.1.1/Icon.png new file mode 100644 index 0000000..ba1c7e0 Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/Icon.png differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/LICENSE.TXT b/packages/Microsoft.Bcl.HashCode.1.1.1/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/Microsoft.Bcl.HashCode.1.1.1/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/Microsoft.Bcl.HashCode.1.1.1.nupkg b/packages/Microsoft.Bcl.HashCode.1.1.1/Microsoft.Bcl.HashCode.1.1.1.nupkg new file mode 100644 index 0000000..91b41cd Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/Microsoft.Bcl.HashCode.1.1.1.nupkg differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/THIRD-PARTY-NOTICES.TXT b/packages/Microsoft.Bcl.HashCode.1.1.1/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..77a243e --- /dev/null +++ b/packages/Microsoft.Bcl.HashCode.1.1.1/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,375 @@ +.NET Core uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Core software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/aspnet/AspNetCore/blob/master/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +http://www.unicode.org/copyright.html#License + +Copyright © 1991-2017 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in http://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +http://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR +COPYRIGHT HOLDERS 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. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/lib/net461/Microsoft.Bcl.HashCode.dll b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/net461/Microsoft.Bcl.HashCode.dll new file mode 100644 index 0000000..3f97f6e Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/net461/Microsoft.Bcl.HashCode.dll differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/lib/net461/Microsoft.Bcl.HashCode.xml b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/net461/Microsoft.Bcl.HashCode.xml new file mode 100644 index 0000000..d5c6c3d --- /dev/null +++ b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/net461/Microsoft.Bcl.HashCode.xml @@ -0,0 +1,34 @@ + + + + Microsoft.Bcl.HashCode + + + + + Rotates the specified value left by the specified number of bits. + Similar in behavior to the x86 instruction ROL. + + The value to rotate. + The number of bits to rotate by. + Any value outside the range [0..31] is treated as congruent mod 32. + The rotated value. + + + + Rotates the specified value left by the specified number of bits. + Similar in behavior to the x86 instruction ROL. + + The value to rotate. + The number of bits to rotate by. + Any value outside the range [0..63] is treated as congruent mod 64. + The rotated value. + + + HashCode is a mutable struct and should not be compared with other HashCodes. + + + HashCode is a mutable struct and should not be compared with other HashCodes. Use ToHashCode to retrieve the computed hash code. + + + diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netcoreapp2.1/Microsoft.Bcl.HashCode.dll b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netcoreapp2.1/Microsoft.Bcl.HashCode.dll new file mode 100644 index 0000000..33571cf Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netcoreapp2.1/Microsoft.Bcl.HashCode.dll differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netcoreapp2.1/Microsoft.Bcl.HashCode.xml b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netcoreapp2.1/Microsoft.Bcl.HashCode.xml new file mode 100644 index 0000000..c77b293 --- /dev/null +++ b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netcoreapp2.1/Microsoft.Bcl.HashCode.xml @@ -0,0 +1,8 @@ + + + + Microsoft.Bcl.HashCode + + + + diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.0/Microsoft.Bcl.HashCode.dll b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.0/Microsoft.Bcl.HashCode.dll new file mode 100644 index 0000000..0de0f25 Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.0/Microsoft.Bcl.HashCode.dll differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.0/Microsoft.Bcl.HashCode.xml b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.0/Microsoft.Bcl.HashCode.xml new file mode 100644 index 0000000..d5c6c3d --- /dev/null +++ b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.0/Microsoft.Bcl.HashCode.xml @@ -0,0 +1,34 @@ + + + + Microsoft.Bcl.HashCode + + + + + Rotates the specified value left by the specified number of bits. + Similar in behavior to the x86 instruction ROL. + + The value to rotate. + The number of bits to rotate by. + Any value outside the range [0..31] is treated as congruent mod 32. + The rotated value. + + + + Rotates the specified value left by the specified number of bits. + Similar in behavior to the x86 instruction ROL. + + The value to rotate. + The number of bits to rotate by. + Any value outside the range [0..63] is treated as congruent mod 64. + The rotated value. + + + HashCode is a mutable struct and should not be compared with other HashCodes. + + + HashCode is a mutable struct and should not be compared with other HashCodes. Use ToHashCode to retrieve the computed hash code. + + + diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.1/Microsoft.Bcl.HashCode.dll b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.1/Microsoft.Bcl.HashCode.dll new file mode 100644 index 0000000..8c14019 Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.1/Microsoft.Bcl.HashCode.dll differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.1/Microsoft.Bcl.HashCode.xml b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.1/Microsoft.Bcl.HashCode.xml new file mode 100644 index 0000000..c77b293 --- /dev/null +++ b/packages/Microsoft.Bcl.HashCode.1.1.1/lib/netstandard2.1/Microsoft.Bcl.HashCode.xml @@ -0,0 +1,8 @@ + + + + Microsoft.Bcl.HashCode + + + + diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/ref/net461/Microsoft.Bcl.HashCode.dll b/packages/Microsoft.Bcl.HashCode.1.1.1/ref/net461/Microsoft.Bcl.HashCode.dll new file mode 100644 index 0000000..b77a9fa Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/ref/net461/Microsoft.Bcl.HashCode.dll differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/ref/netcoreapp2.1/Microsoft.Bcl.HashCode.dll b/packages/Microsoft.Bcl.HashCode.1.1.1/ref/netcoreapp2.1/Microsoft.Bcl.HashCode.dll new file mode 100644 index 0000000..c2db348 Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/ref/netcoreapp2.1/Microsoft.Bcl.HashCode.dll differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/ref/netstandard2.0/Microsoft.Bcl.HashCode.dll b/packages/Microsoft.Bcl.HashCode.1.1.1/ref/netstandard2.0/Microsoft.Bcl.HashCode.dll new file mode 100644 index 0000000..da7fe53 Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/ref/netstandard2.0/Microsoft.Bcl.HashCode.dll differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/ref/netstandard2.1/Microsoft.Bcl.HashCode.dll b/packages/Microsoft.Bcl.HashCode.1.1.1/ref/netstandard2.1/Microsoft.Bcl.HashCode.dll new file mode 100644 index 0000000..8302fd1 Binary files /dev/null and b/packages/Microsoft.Bcl.HashCode.1.1.1/ref/netstandard2.1/Microsoft.Bcl.HashCode.dll differ diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/useSharedDesignerContext.txt b/packages/Microsoft.Bcl.HashCode.1.1.1/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/Microsoft.Bcl.HashCode.1.1.1/version.txt b/packages/Microsoft.Bcl.HashCode.1.1.1/version.txt new file mode 100644 index 0000000..a662b0e --- /dev/null +++ b/packages/Microsoft.Bcl.HashCode.1.1.1/version.txt @@ -0,0 +1 @@ +59d2f36ec02c494eec50940c7993257a807f9531 diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/.signature.p7s b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/.signature.p7s new file mode 100644 index 0000000..e5afdc5 Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/.signature.p7s differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/Icon.png b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/Icon.png new file mode 100644 index 0000000..a0f1fdb Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/Icon.png differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/LICENSE.TXT b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0.nupkg b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0.nupkg new file mode 100644 index 0000000..2ebd47f Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0.nupkg differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/PACKAGE.md b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/PACKAGE.md new file mode 100644 index 0000000..6c8a654 --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/PACKAGE.md @@ -0,0 +1,34 @@ +## About +Supports the lower-level abstractions for the dependency injection (DI) software design pattern which is a technique for achieving Inversion of Control (IoC) between classes and their dependencies. + +## Key Features +- Interfaces for DI implementations which are provided in other packages including `Microsoft.Extensions.DependencyInjection`. +- An implementation of a service collection, which is used to add services to and later retrieve them either directly or through constructor injection. +- Interfaces, attributes and extensions methods to support various DI concepts including specifying a service's lifetime and supporting keyed services. + +## How to Use +This package is typically used with an implementation of the DI abstractions, such as `Microsoft.Extensions.DependencyInjection`. + +## Main Types +The main types provided by this library are: +* `Microsoft.Extensions.DependencyInjection.ActivatorUtilities` +* `Microsoft.Extensions.DependencyInjection.IServiceCollection` +* `Microsoft.Extensions.DependencyInjection.ServiceCollection` +* `Microsoft.Extensions.DependencyInjection.ServiceCollectionDescriptorExtensions` +* `Microsoft.Extensions.DependencyInjection.ServiceDescriptor` +* `Microsoft.Extensions.DependencyInjection.IServiceProviderFactory` + +## Additional Documentation +* [Conceptual documentation](https://learn.microsoft.com/dotnet/core/extensions/dependency-injection) +* API documentation + - [ActivatorUtilities](https://learn.microsoft.com/dotnet/api/microsoft.extensions.dependencyinjection.defaultserviceproviderfactory) + - [ServiceCollection](https://learn.microsoft.com/dotnet/api/microsoft.extensions.dependencyinjection.servicecollection) + - [ServiceDescriptor](https://learn.microsoft.com/dotnet/api/microsoft.extensions.dependencyinjection.servicedescriptor) + +## Related Packages +- `Microsoft.Extensions.DependencyInjection` +- `Microsoft.Extensions.Hosting` +- `Microsoft.Extensions.Options` + +## Feedback & Contributing +Microsoft.Extensions.DependencyInjection.Abstractions is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime). diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/THIRD-PARTY-NOTICES.TXT b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..4b40333 --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,1272 @@ +.NET Runtime uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Runtime software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +https://www.unicode.org/license.html + +Copyright © 1991-2022 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +https://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.13, October 13th, 2022 + + Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR +COPYRIGHT HOLDERS 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. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for vectorized hex parsing +-------------------------------------------------------- + +Copyright (c) 2022, Geoff Langdale +Copyright (c) 2022, Wojciech Mula +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for RFC 3492 +--------------------------- + +The punycode implementation is based on the sample code in RFC 3492 + +Copyright (C) The Internet Society (2003). All Rights Reserved. + +This document and translations of it may be copied and furnished to +others, and derivative works that comment on or otherwise explain it +or assist in its implementation may be prepared, copied, published +and distributed, in whole or in part, without restriction of any +kind, provided that the above copyright notice and this paragraph are +included on all such copies and derivative works. However, this +document itself may not be modified in any way, such as by removing +the copyright notice or references to the Internet Society or other +Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for +copyrights defined in the Internet Standards process must be +followed, or as required to translate it into languages other than +English. + +The limited permissions granted above are perpetual and will not be +revoked by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an +"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Copyright(C) The Internet Society 1997. All Rights Reserved. + +This document and translations of it may be copied and furnished to others, +and derivative works that comment on or otherwise explain it or assist in +its implementation may be prepared, copied, published and distributed, in +whole or in part, without restriction of any kind, provided that the above +copyright notice and this paragraph are included on all such copies and +derivative works.However, this document itself may not be modified in any +way, such as by removing the copyright notice or references to the Internet +Society or other Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for copyrights +defined in the Internet Standards process must be followed, or as required +to translate it into languages other than English. + +The limited permissions granted above are perpetual and will not be revoked +by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an "AS IS" +basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE +DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO +ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY +RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A +PARTICULAR PURPOSE. + +License notice for Algorithm from RFC 4122 - +A Universally Unique IDentifier (UUID) URN Namespace +---------------------------------------------------- + +Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. +Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & +Digital Equipment Corporation, Maynard, Mass. +Copyright (c) 1998 Microsoft. +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: permission to use, copy, +modify, and distribute this file for any purpose is hereby +granted without fee, provided that the above copyright notices and +this notice appears in all source code copies, and that none of +the names of Open Software Foundation, Inc., Hewlett-Packard +Company, Microsoft, or Digital Equipment Corporation be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Neither Open Software +Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital +Equipment Corporation makes any representations about the +suitability of this software for any purpose." + +License notice for The LLVM Compiler Infrastructure (Legacy License) +-------------------------------------------------------------------- + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +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 +CONTRIBUTORS OR COPYRIGHT HOLDERS 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 WITH THE +SOFTWARE. + +License notice for Bob Jenkins +------------------------------ + +By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this +code any way you wish, private, educational, or commercial. It's free. + +License notice for Greg Parker +------------------------------ + +Greg Parker gparker@cs.stanford.edu December 2000 +This code is in the public domain and may be copied or modified without +permission. + +License notice for libunwind based code +---------------------------------------- + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for Printing Floating-Point Numbers (Dragon4) +------------------------------------------------------------ + +/****************************************************************************** + Copyright (c) 2014 Ryan Juckett + http://www.ryanjuckett.com/ + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source + distribution. +******************************************************************************/ + +License notice for Printing Floating-point Numbers (Grisu3) +----------------------------------------------------------- + +Copyright 2012 the V8 project authors. All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xxHash +------------------------- + +xxHash - Extremely Fast Hash algorithm +Header File +Copyright (C) 2012-2021 Yann Collet + +BSD 2-Clause License (https://www.opensource.org/licenses/bsd-license.php) + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +You can contact the author at: + - xxHash homepage: https://www.xxhash.com + - xxHash source repository: https://github.com/Cyan4973/xxHash + +License notice for Berkeley SoftFloat Release 3e +------------------------------------------------ + +https://github.com/ucb-bar/berkeley-softfloat-3 +https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt + +License for Berkeley SoftFloat Release 3e + +John R. Hauser +2018 January 20 + +The following applies to the whole of SoftFloat Release 3e as well as to +each source file individually. + +Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the +University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions, and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE +DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xoshiro RNGs +-------------------------------- + +Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org) + +To the extent possible under law, the author has dedicated all copyright +and related and neighboring rights to this software to the public domain +worldwide. This software is distributed without any warranty. + +See . + +License for fastmod (https://github.com/lemire/fastmod), ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data) and fastrange (https://github.com/lemire/fastrange) +-------------------------------------- + + Copyright 2018 Daniel Lemire + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +License for sse4-strstr (https://github.com/WojciechMula/sse4-strstr) +-------------------------------------- + + Copyright (c) 2008-2016, Wojciech Mula + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for The C++ REST SDK +----------------------------------- + +C++ REST SDK + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for MessagePack-CSharp +------------------------------------- + +MessagePack for C# + +MIT License + +Copyright (c) 2017 Yoshifumi Kawai + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for lz4net +------------------------------------- + +lz4net + +Copyright (c) 2013-2017, Milosz Krajewski + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Nerdbank.Streams +----------------------------------- + +The MIT License (MIT) + +Copyright (c) Andrew Arnott + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for RapidJSON +---------------------------- + +Tencent is pleased to support the open source community by making RapidJSON available. + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. + +Licensed under the MIT License (the "License"); you may not use this file except +in compliance with the License. You may obtain a copy of the License at + +http://opensource.org/licenses/MIT + +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. + +License notice for DirectX Math Library +--------------------------------------- + +https://github.com/microsoft/DirectXMath/blob/master/LICENSE + + The MIT License (MIT) + +Copyright (c) 2011-2020 Microsoft Corp + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +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 OR COPYRIGHT +HOLDERS 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. + +License notice for ldap4net +--------------------------- + +The MIT License (MIT) + +Copyright (c) 2018 Alexander Chermyanin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for vectorized sorting code +------------------------------------------ + +MIT License + +Copyright (c) 2020 Dan Shechter + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for musl +----------------------- + +musl as a whole is licensed under the following standard MIT license: + +Copyright © 2005-2020 Rich Felker, et al. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + + +License notice for "Faster Unsigned Division by Constants" +------------------------------ + +Reference implementations of computing and using the "magic number" approach to dividing +by constants, including codegen instructions. The unsigned division incorporates the +"round down" optimization per ridiculous_fish. + +This is free and unencumbered software. Any copyright is dedicated to the Public Domain. + + +License notice for mimalloc +----------------------------------- + +MIT License + +Copyright (c) 2019 Microsoft Corporation, Daan Leijen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for The LLVM Project +----------------------------------- + +Copyright 2019 LLVM Project + +Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions; +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +https://llvm.org/LICENSE.txt + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +License notice for Apple header files +------------------------------------- + +Copyright (c) 1980, 1986, 1993 + The Regents of the University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. +4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +License notice for JavaScript queues +------------------------------------- + +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. + +Statement of Purpose +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: +the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; +moral rights retained by the original author(s) and/or performer(s); +publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; +rights protecting the extraction, dissemination, use and reuse of data in a Work; +database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and +other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. +4. Limitations and Disclaimers. +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. + + +License notice for FastFloat algorithm +------------------------------------- +MIT License +Copyright (c) 2021 csFastFloat authors +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License notice for MsQuic +-------------------------------------- + +Copyright (c) Microsoft Corporation. +Licensed under the MIT License. + +Available at +https://github.com/microsoft/msquic/blob/main/LICENSE + +License notice for m-ou-se/floatconv +------------------------------- + +Copyright (c) 2020 Mara Bos +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for code from The Practice of Programming +------------------------------- + +Copyright (C) 1999 Lucent Technologies + +Excerpted from 'The Practice of Programming +by Brian W. Kernighan and Rob Pike + +You may use this code for any purpose, as long as you leave the copyright notice and book citation attached. + +Notice for Euclidean Affine Functions and Applications to Calendar +Algorithms +------------------------------- + +Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar +Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf + +License notice for amd/aocl-libm-ose +------------------------------- + +Copyright (C) 2008-2020 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +License notice for fmtlib/fmt +------------------------------- + +Formatting library for C++ + +Copyright (c) 2012 - present, Victor Zverovich + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License for Jb Evain +--------------------- + +Copyright (c) 2006 Jb Evain (jbevain@gmail.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +License for MurmurHash3 +-------------------------------------- + +https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp + +MurmurHash3 was written by Austin Appleby, and is placed in the public +domain. The author hereby disclaims copyright to this source + +License for Fast CRC Computation +-------------------------------------- + +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc32_ieee_by4.asm +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc64_ecma_norm_by8.asm + +Copyright(c) 2011-2015 Intel Corporation All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License for C# Implementation of Fast CRC Computation +----------------------------------------------------- + +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/src/ImageSharp/Formats/Png/Zlib/Crc32.cs + +Copyright (c) Six Labors. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/LICENSE diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets new file mode 100644 index 0000000..8a086a7 --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/buildTransitive/net462/_._ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/buildTransitive/net462/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/buildTransitive/net6.0/_._ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/buildTransitive/net6.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets new file mode 100644 index 0000000..dd4fb26 --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 0000000..3298f8d Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml new file mode 100644 index 0000000..ca535c8 --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml @@ -0,0 +1,2515 @@ + + + + Microsoft.Extensions.DependencyInjection.Abstractions + + + + + Helper code for the various activator services. + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The service provider used to resolve dependencies + The type to activate + Constructor arguments not provided by the . + An activated object of type instanceType + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate instanceType using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate type T using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The type to activate + The service provider used to resolve dependencies + Constructor arguments not provided by the . + An activated object of type T + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The type of the service + The service provider used to resolve dependencies + The resolved service or created instance + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The service provider + The type of the service + The resolved service or created instance + + + + Marks the constructor to be used when activating type using . + + + + + An implementation that implements . + + + + + Initializes a new instance of the struct. + Wraps an instance of . + + The instance to wrap. + + + + + + + + + + + + + Extension methods for adding and removing services to an . + + + + + Adds the specified to the . + + The . + The to add. + A reference to the current instance of . + + + + Adds a sequence of to the . + + The . + The s to add. + A reference to the current instance of . + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The to add. + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The s to add. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds a if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The . + + Use when registering a service implementation of a + service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Adds the specified s if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The s. + + Use when registering a service + implementation of a service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Removes the first service in with the same service type + as and adds to the collection. + + The . + The to replace with. + The for chaining. + + + + Removes all services of type in . + + The . + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The for chaining. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + The service key. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Removes all services of type in . + + The . + The service key. + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The service key. + The for chaining. + + + + Indicates that the parameter should be bound using the keyed service registered with the specified key. + + + + + Creates a new instance. + + The key of the keyed service to bind to. + + + + The key of the keyed service to bind to. + + + + + IKeyedServiceProvider is a service provider that can be used to retrieve services using a key in addition + to a type. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type serviceType. -or- null if there is no service object of type serviceType. + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + The of the service. + A service object of type . + Throws an exception if the cannot create the object. + + + + Statics for use with . + + + + + Represents a key that matches any key. + + + + + Specifies the contract for a collection of service descriptors. + + + + + Provides an extension point for creating a container specific builder and an . + + + + + Creates a container builder from an . + + The collection of services + A container builder that can be used to create an . + + + + Creates an from the container builder. + + The container builder + An + + + + Optional service used to determine if the specified type with the specified service key is available + from the . + + + + + Determines if the specified service type with the specified service key is available from the + . + + An object that specifies the type of service object to test. + The of the service. + true if the specified service is a available, false if it is not. + + + + Optional service used to determine if the specified type is available from the . + + + + + Determines if the specified service type is available from the . + + An object that specifies the type of service object to test. + true if the specified service is a available, false if it is not. + + + + The method ends the scope lifetime. Once Dispose + is called, any scoped services that have been resolved from + will be + disposed. + + + + + The used to resolve dependencies from the scope. + + + + + A factory for creating instances of , which is used to create + services within a scope. + + + + + Create an which + contains an used to resolve dependencies from a + newly created scope. + + + An controlling the + lifetime of the scope. Once this is disposed, any scoped services that have been resolved + from the + will also be disposed. + + + + + Optional contract used by + to resolve services if supported by . + + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + A service object of type . + Throws an exception if the cannot create the object. + + + + The result of . + + The to get service arguments from. + Additional constructor arguments. + The instantiated type. + + + + The result of . A delegate to specify a factory method to call to instantiate an instance of type `T` + + The type of the instance being returned + The to get service arguments from. + Additional constructor arguments. + An instance of T + + + + Default implementation of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Makes this collection read-only. + + + After the collection is marked as read-only, any further attempt to modify it throws an . + + + + + Extension methods for adding services to an . + + + Extension methods for adding services to an . + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Describes a service with its service type, implementation, and lifetime. + + + + + Initializes a new instance of with the specified . + + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified . + + The of the service. + A factory used for creating service instances. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + A factory used for creating service instances. + The of the service. + + + + Gets the of the service. + + + + + Get the key of the service, if applicable. + + + + + Gets the of the service. + + + + + Gets the that implements the service. + + + + + Gets the that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the factory used for creating service instances. + + + + + Gets the factory used for creating Keyed service instances. + + + + + Indicates whether the service is a keyed service. + + + + + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + ServiceKeyAttribute can be specified on a parameter to inject the key that was used for + registration/resolution. + + + + + Specifies the lifetime of a service in an . + + + + + Specifies that a single instance of the service will be created. + + + + + Specifies that a new instance of the service will be created for each scope. + + + In ASP.NET Core applications a scope is created around each server request. + + + + + Specifies that a new instance of the service will be created every time it is requested. + + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An enumeration of services of type . + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + A that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + + Indicates that certain members on a specified are accessed dynamically, + for example through . + + + This allows tools to understand which members are being accessed during the execution + of a program. + + This attribute is valid on members whose type is or . + + When this attribute is applied to a location of type , the assumption is + that the string represents a fully qualified type name. + + When this attribute is applied to a class, interface, or struct, the members specified + can be accessed dynamically on instances returned from calling + on instances of that class, interface, or struct. + + If the attribute is applied to a method it's treated as a special case and it implies + the attribute should be applied to the "this" parameter of the method. As such the attribute + should only be used on instance methods of types assignable to System.Type (or string, but no methods + will use it there). + + + + + Initializes a new instance of the class + with the specified member types. + + The types of members dynamically accessed. + + + + Gets the which specifies the type + of members dynamically accessed. + + + + + Specifies the types of members that are dynamically accessed. + + This enumeration has a attribute that allows a + bitwise combination of its member values. + + + + + Specifies no members. + + + + + Specifies the default, parameterless public constructor. + + + + + Specifies all public constructors. + + + + + Specifies all non-public constructors. + + + + + Specifies all public methods. + + + + + Specifies all non-public methods. + + + + + Specifies all public fields. + + + + + Specifies all non-public fields. + + + + + Specifies all public nested types. + + + + + Specifies all non-public nested types. + + + + + Specifies all public properties. + + + + + Specifies all non-public properties. + + + + + Specifies all public events. + + + + + Specifies all non-public events. + + + + + Specifies all interfaces implemented by the type. + + + + + Specifies all members. + + + + + Suppresses reporting of a specific rule violation, allowing multiple suppressions on a + single code artifact. + + + is different than + in that it doesn't have a + . So it is always preserved in the compiled assembly. + + + + + Initializes a new instance of the + class, specifying the category of the tool and the identifier for an analysis rule. + + The category for the attribute. + The identifier of the analysis rule the attribute applies to. + + + + Gets the category identifying the classification of the attribute. + + + The property describes the tool or tool analysis category + for which a message suppression attribute applies. + + + + + Gets the identifier of the analysis tool rule to be suppressed. + + + Concatenated together, the and + properties form a unique check identifier. + + + + + Gets or sets the scope of the code that is relevant for the attribute. + + + The Scope property is an optional argument that specifies the metadata scope for which + the attribute is relevant. + + + + + Gets or sets a fully qualified path that represents the target of the attribute. + + + The property is an optional argument identifying the analysis target + of the attribute. An example value is "System.IO.Stream.ctor():System.Void". + Because it is fully qualified, it can be long, particularly for targets such as parameters. + The analysis tool user interface should be capable of automatically formatting the parameter. + + + + + Gets or sets an optional argument expanding on exclusion criteria. + + + The property is an optional argument that specifies additional + exclusion where the literal metadata target is not sufficiently precise. For example, + the cannot be applied within a method, + and it may be desirable to suppress a violation against a statement in the method that will + give a rule violation, but not against all statements in the method. + + + + + Gets or sets the justification for suppressing the code analysis message. + + + + + Indicates that the specified method requires the ability to generate new code at runtime, + for example through . + + + This allows tools to understand which methods are unsafe to call when compiling ahead of time. + + + + + Initializes a new instance of the class + with the specified message. + + + A message that contains information about the usage of dynamic code. + + + + + Gets a message that contains information about the usage of dynamic code. + + + + + Gets or sets an optional URL that contains more information about the method, + why it requires dynamic code, and what options a consumer has to deal with it. + + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + Specifies that an output may be null even if the corresponding type disallows it. + + + Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns. + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + + Gets the return value condition. + + + Specifies that the output will be non-null if the named parameter is non-null. + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + Applied to a method that will never return under any circumstance. + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + Initializes the attribute with the specified parameter value. + + The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to + the associated parameter matches this value. + + + + Gets the condition parameter value. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + No service for type '{0}' has been registered. + + + The service collection cannot be modified because it is read-only. + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + Multiple constructors were marked with {0}. + + + Constructor marked with {0} does not accept all given argument types. + + + Instances of abstract classes cannot be created. + + + Multiple constructors for type '{0}' were found with length {1}. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and all parameters of a public constructor are either registered as services or passed as arguments. Also ensure no extraneous arguments are provided. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + This service provider doesn't support keyed services. + + + This service descriptor is keyed. Your service provider may not support keyed services. + + + This service descriptor is not keyed. + + + diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 0000000..b6f0c27 Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml new file mode 100644 index 0000000..ea06241 --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml @@ -0,0 +1,2207 @@ + + + + Microsoft.Extensions.DependencyInjection.Abstractions + + + + + Helper code for the various activator services. + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The service provider used to resolve dependencies + The type to activate + Constructor arguments not provided by the . + An activated object of type instanceType + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate instanceType using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate type T using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The type to activate + The service provider used to resolve dependencies + Constructor arguments not provided by the . + An activated object of type T + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The type of the service + The service provider used to resolve dependencies + The resolved service or created instance + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The service provider + The type of the service + The resolved service or created instance + + + + Marks the constructor to be used when activating type using . + + + + + An implementation that implements . + + + + + Initializes a new instance of the struct. + Wraps an instance of . + + The instance to wrap. + + + + + + + + + + + + + Extension methods for adding and removing services to an . + + + + + Adds the specified to the . + + The . + The to add. + A reference to the current instance of . + + + + Adds a sequence of to the . + + The . + The s to add. + A reference to the current instance of . + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The to add. + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The s to add. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds a if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The . + + Use when registering a service implementation of a + service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Adds the specified s if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The s. + + Use when registering a service + implementation of a service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Removes the first service in with the same service type + as and adds to the collection. + + The . + The to replace with. + The for chaining. + + + + Removes all services of type in . + + The . + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The for chaining. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + The service key. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Removes all services of type in . + + The . + The service key. + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The service key. + The for chaining. + + + + Indicates that the parameter should be bound using the keyed service registered with the specified key. + + + + + Creates a new instance. + + The key of the keyed service to bind to. + + + + The key of the keyed service to bind to. + + + + + IKeyedServiceProvider is a service provider that can be used to retrieve services using a key in addition + to a type. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type serviceType. -or- null if there is no service object of type serviceType. + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + The of the service. + A service object of type . + Throws an exception if the cannot create the object. + + + + Statics for use with . + + + + + Represents a key that matches any key. + + + + + Specifies the contract for a collection of service descriptors. + + + + + Provides an extension point for creating a container specific builder and an . + + + + + Creates a container builder from an . + + The collection of services + A container builder that can be used to create an . + + + + Creates an from the container builder. + + The container builder + An + + + + Optional service used to determine if the specified type with the specified service key is available + from the . + + + + + Determines if the specified service type with the specified service key is available from the + . + + An object that specifies the type of service object to test. + The of the service. + true if the specified service is a available, false if it is not. + + + + Optional service used to determine if the specified type is available from the . + + + + + Determines if the specified service type is available from the . + + An object that specifies the type of service object to test. + true if the specified service is a available, false if it is not. + + + + The method ends the scope lifetime. Once Dispose + is called, any scoped services that have been resolved from + will be + disposed. + + + + + The used to resolve dependencies from the scope. + + + + + A factory for creating instances of , which is used to create + services within a scope. + + + + + Create an which + contains an used to resolve dependencies from a + newly created scope. + + + An controlling the + lifetime of the scope. Once this is disposed, any scoped services that have been resolved + from the + will also be disposed. + + + + + Optional contract used by + to resolve services if supported by . + + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + A service object of type . + Throws an exception if the cannot create the object. + + + + The result of . + + The to get service arguments from. + Additional constructor arguments. + The instantiated type. + + + + The result of . A delegate to specify a factory method to call to instantiate an instance of type `T` + + The type of the instance being returned + The to get service arguments from. + Additional constructor arguments. + An instance of T + + + + Default implementation of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Makes this collection read-only. + + + After the collection is marked as read-only, any further attempt to modify it throws an . + + + + + Extension methods for adding services to an . + + + Extension methods for adding services to an . + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Describes a service with its service type, implementation, and lifetime. + + + + + Initializes a new instance of with the specified . + + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified . + + The of the service. + A factory used for creating service instances. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + A factory used for creating service instances. + The of the service. + + + + Gets the of the service. + + + + + Get the key of the service, if applicable. + + + + + Gets the of the service. + + + + + Gets the that implements the service. + + + + + Gets the that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the factory used for creating service instances. + + + + + Gets the factory used for creating Keyed service instances. + + + + + Indicates whether the service is a keyed service. + + + + + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + ServiceKeyAttribute can be specified on a parameter to inject the key that was used for + registration/resolution. + + + + + Specifies the lifetime of a service in an . + + + + + Specifies that a single instance of the service will be created. + + + + + Specifies that a new instance of the service will be created for each scope. + + + In ASP.NET Core applications a scope is created around each server request. + + + + + Specifies that a new instance of the service will be created every time it is requested. + + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An enumeration of services of type . + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + A that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + + Indicates that the specified method requires the ability to generate new code at runtime, + for example through . + + + This allows tools to understand which methods are unsafe to call when compiling ahead of time. + + + + + Initializes a new instance of the class + with the specified message. + + + A message that contains information about the usage of dynamic code. + + + + + Gets a message that contains information about the usage of dynamic code. + + + + + Gets or sets an optional URL that contains more information about the method, + why it requires dynamic code, and what options a consumer has to deal with it. + + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + No service for type '{0}' has been registered. + + + The service collection cannot be modified because it is read-only. + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + Multiple constructors were marked with {0}. + + + Constructor marked with {0} does not accept all given argument types. + + + Instances of abstract classes cannot be created. + + + Multiple constructors for type '{0}' were found with length {1}. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and all parameters of a public constructor are either registered as services or passed as arguments. Also ensure no extraneous arguments are provided. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + This service provider doesn't support keyed services. + + + This service descriptor is keyed. Your service provider may not support keyed services. + + + This service descriptor is not keyed. + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 0000000..0a8c0f5 Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml new file mode 100644 index 0000000..310bba2 --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml @@ -0,0 +1,2107 @@ + + + + Microsoft.Extensions.DependencyInjection.Abstractions + + + + + Helper code for the various activator services. + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The service provider used to resolve dependencies + The type to activate + Constructor arguments not provided by the . + An activated object of type instanceType + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate instanceType using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate type T using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The type to activate + The service provider used to resolve dependencies + Constructor arguments not provided by the . + An activated object of type T + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The type of the service + The service provider used to resolve dependencies + The resolved service or created instance + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The service provider + The type of the service + The resolved service or created instance + + + + Marks the constructor to be used when activating type using . + + + + + An implementation that implements . + + + + + Initializes a new instance of the struct. + Wraps an instance of . + + The instance to wrap. + + + + + + + + + + + + + Extension methods for adding and removing services to an . + + + + + Adds the specified to the . + + The . + The to add. + A reference to the current instance of . + + + + Adds a sequence of to the . + + The . + The s to add. + A reference to the current instance of . + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The to add. + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The s to add. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds a if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The . + + Use when registering a service implementation of a + service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Adds the specified s if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The s. + + Use when registering a service + implementation of a service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Removes the first service in with the same service type + as and adds to the collection. + + The . + The to replace with. + The for chaining. + + + + Removes all services of type in . + + The . + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The for chaining. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + The service key. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Removes all services of type in . + + The . + The service key. + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The service key. + The for chaining. + + + + Indicates that the parameter should be bound using the keyed service registered with the specified key. + + + + + Creates a new instance. + + The key of the keyed service to bind to. + + + + The key of the keyed service to bind to. + + + + + IKeyedServiceProvider is a service provider that can be used to retrieve services using a key in addition + to a type. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type serviceType. -or- null if there is no service object of type serviceType. + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + The of the service. + A service object of type . + Throws an exception if the cannot create the object. + + + + Statics for use with . + + + + + Represents a key that matches any key. + + + + + Specifies the contract for a collection of service descriptors. + + + + + Provides an extension point for creating a container specific builder and an . + + + + + Creates a container builder from an . + + The collection of services + A container builder that can be used to create an . + + + + Creates an from the container builder. + + The container builder + An + + + + Optional service used to determine if the specified type with the specified service key is available + from the . + + + + + Determines if the specified service type with the specified service key is available from the + . + + An object that specifies the type of service object to test. + The of the service. + true if the specified service is a available, false if it is not. + + + + Optional service used to determine if the specified type is available from the . + + + + + Determines if the specified service type is available from the . + + An object that specifies the type of service object to test. + true if the specified service is a available, false if it is not. + + + + The method ends the scope lifetime. Once Dispose + is called, any scoped services that have been resolved from + will be + disposed. + + + + + The used to resolve dependencies from the scope. + + + + + A factory for creating instances of , which is used to create + services within a scope. + + + + + Create an which + contains an used to resolve dependencies from a + newly created scope. + + + An controlling the + lifetime of the scope. Once this is disposed, any scoped services that have been resolved + from the + will also be disposed. + + + + + Optional contract used by + to resolve services if supported by . + + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + A service object of type . + Throws an exception if the cannot create the object. + + + + The result of . + + The to get service arguments from. + Additional constructor arguments. + The instantiated type. + + + + The result of . A delegate to specify a factory method to call to instantiate an instance of type `T` + + The type of the instance being returned + The to get service arguments from. + Additional constructor arguments. + An instance of T + + + + Default implementation of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Makes this collection read-only. + + + After the collection is marked as read-only, any further attempt to modify it throws an . + + + + + Extension methods for adding services to an . + + + Extension methods for adding services to an . + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Describes a service with its service type, implementation, and lifetime. + + + + + Initializes a new instance of with the specified . + + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified . + + The of the service. + A factory used for creating service instances. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + A factory used for creating service instances. + The of the service. + + + + Gets the of the service. + + + + + Get the key of the service, if applicable. + + + + + Gets the of the service. + + + + + Gets the that implements the service. + + + + + Gets the that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the factory used for creating service instances. + + + + + Gets the factory used for creating Keyed service instances. + + + + + Indicates whether the service is a keyed service. + + + + + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + ServiceKeyAttribute can be specified on a parameter to inject the key that was used for + registration/resolution. + + + + + Specifies the lifetime of a service in an . + + + + + Specifies that a single instance of the service will be created. + + + + + Specifies that a new instance of the service will be created for each scope. + + + In ASP.NET Core applications a scope is created around each server request. + + + + + Specifies that a new instance of the service will be created every time it is requested. + + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An enumeration of services of type . + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + A that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + No service for type '{0}' has been registered. + + + The service collection cannot be modified because it is read-only. + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + Multiple constructors were marked with {0}. + + + Constructor marked with {0} does not accept all given argument types. + + + Instances of abstract classes cannot be created. + + + Multiple constructors for type '{0}' were found with length {1}. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and all parameters of a public constructor are either registered as services or passed as arguments. Also ensure no extraneous arguments are provided. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + This service provider doesn't support keyed services. + + + This service descriptor is keyed. Your service provider may not support keyed services. + + + This service descriptor is not keyed. + + + diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 0000000..0b3c8e9 Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml new file mode 100644 index 0000000..306d438 --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml @@ -0,0 +1,2112 @@ + + + + Microsoft.Extensions.DependencyInjection.Abstractions + + + + + Helper code for the various activator services. + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The service provider used to resolve dependencies + The type to activate + Constructor arguments not provided by the . + An activated object of type instanceType + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate instanceType using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate type T using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The type to activate + The service provider used to resolve dependencies + Constructor arguments not provided by the . + An activated object of type T + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The type of the service + The service provider used to resolve dependencies + The resolved service or created instance + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The service provider + The type of the service + The resolved service or created instance + + + + For consistency with the expression-based factory, throw NullReferenceException. + + + + + Marks the constructor to be used when activating type using . + + + + + An implementation that implements . + + + + + Initializes a new instance of the struct. + Wraps an instance of . + + The instance to wrap. + + + + + + + + + + + + + Extension methods for adding and removing services to an . + + + + + Adds the specified to the . + + The . + The to add. + A reference to the current instance of . + + + + Adds a sequence of to the . + + The . + The s to add. + A reference to the current instance of . + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The to add. + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The s to add. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds a if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The . + + Use when registering a service implementation of a + service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Adds the specified s if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The s. + + Use when registering a service + implementation of a service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Removes the first service in with the same service type + as and adds to the collection. + + The . + The to replace with. + The for chaining. + + + + Removes all services of type in . + + The . + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The for chaining. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + The service key. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Removes all services of type in . + + The . + The service key. + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The service key. + The for chaining. + + + + Indicates that the parameter should be bound using the keyed service registered with the specified key. + + + + + Creates a new instance. + + The key of the keyed service to bind to. + + + + The key of the keyed service to bind to. + + + + + IKeyedServiceProvider is a service provider that can be used to retrieve services using a key in addition + to a type. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type serviceType. -or- null if there is no service object of type serviceType. + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + The of the service. + A service object of type . + Throws an exception if the cannot create the object. + + + + Statics for use with . + + + + + Represents a key that matches any key. + + + + + Specifies the contract for a collection of service descriptors. + + + + + Provides an extension point for creating a container specific builder and an . + + + + + Creates a container builder from an . + + The collection of services + A container builder that can be used to create an . + + + + Creates an from the container builder. + + The container builder + An + + + + Optional service used to determine if the specified type with the specified service key is available + from the . + + + + + Determines if the specified service type with the specified service key is available from the + . + + An object that specifies the type of service object to test. + The of the service. + true if the specified service is a available, false if it is not. + + + + Optional service used to determine if the specified type is available from the . + + + + + Determines if the specified service type is available from the . + + An object that specifies the type of service object to test. + true if the specified service is a available, false if it is not. + + + + The method ends the scope lifetime. Once Dispose + is called, any scoped services that have been resolved from + will be + disposed. + + + + + The used to resolve dependencies from the scope. + + + + + A factory for creating instances of , which is used to create + services within a scope. + + + + + Create an which + contains an used to resolve dependencies from a + newly created scope. + + + An controlling the + lifetime of the scope. Once this is disposed, any scoped services that have been resolved + from the + will also be disposed. + + + + + Optional contract used by + to resolve services if supported by . + + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + A service object of type . + Throws an exception if the cannot create the object. + + + + The result of . + + The to get service arguments from. + Additional constructor arguments. + The instantiated type. + + + + The result of . A delegate to specify a factory method to call to instantiate an instance of type `T` + + The type of the instance being returned + The to get service arguments from. + Additional constructor arguments. + An instance of T + + + + Default implementation of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Makes this collection read-only. + + + After the collection is marked as read-only, any further attempt to modify it throws an . + + + + + Extension methods for adding services to an . + + + Extension methods for adding services to an . + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Describes a service with its service type, implementation, and lifetime. + + + + + Initializes a new instance of with the specified . + + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified . + + The of the service. + A factory used for creating service instances. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + A factory used for creating service instances. + The of the service. + + + + Gets the of the service. + + + + + Get the key of the service, if applicable. + + + + + Gets the of the service. + + + + + Gets the that implements the service. + + + + + Gets the that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the factory used for creating service instances. + + + + + Gets the factory used for creating Keyed service instances. + + + + + Indicates whether the service is a keyed service. + + + + + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + ServiceKeyAttribute can be specified on a parameter to inject the key that was used for + registration/resolution. + + + + + Specifies the lifetime of a service in an . + + + + + Specifies that a single instance of the service will be created. + + + + + Specifies that a new instance of the service will be created for each scope. + + + In ASP.NET Core applications a scope is created around each server request. + + + + + Specifies that a new instance of the service will be created every time it is requested. + + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An enumeration of services of type . + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + A that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + No service for type '{0}' has been registered. + + + The service collection cannot be modified because it is read-only. + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + Multiple constructors were marked with {0}. + + + Constructor marked with {0} does not accept all given argument types. + + + Instances of abstract classes cannot be created. + + + Multiple constructors for type '{0}' were found with length {1}. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and all parameters of a public constructor are either registered as services or passed as arguments. Also ensure no extraneous arguments are provided. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + This service provider doesn't support keyed services. + + + This service descriptor is keyed. Your service provider may not support keyed services. + + + This service descriptor is not keyed. + + + diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 0000000..73dde7d Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml new file mode 100644 index 0000000..ca535c8 --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml @@ -0,0 +1,2515 @@ + + + + Microsoft.Extensions.DependencyInjection.Abstractions + + + + + Helper code for the various activator services. + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The service provider used to resolve dependencies + The type to activate + Constructor arguments not provided by the . + An activated object of type instanceType + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate instanceType using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate type T using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The type to activate + The service provider used to resolve dependencies + Constructor arguments not provided by the . + An activated object of type T + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The type of the service + The service provider used to resolve dependencies + The resolved service or created instance + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The service provider + The type of the service + The resolved service or created instance + + + + Marks the constructor to be used when activating type using . + + + + + An implementation that implements . + + + + + Initializes a new instance of the struct. + Wraps an instance of . + + The instance to wrap. + + + + + + + + + + + + + Extension methods for adding and removing services to an . + + + + + Adds the specified to the . + + The . + The to add. + A reference to the current instance of . + + + + Adds a sequence of to the . + + The . + The s to add. + A reference to the current instance of . + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The to add. + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The s to add. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds a if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The . + + Use when registering a service implementation of a + service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Adds the specified s if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The s. + + Use when registering a service + implementation of a service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Removes the first service in with the same service type + as and adds to the collection. + + The . + The to replace with. + The for chaining. + + + + Removes all services of type in . + + The . + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The for chaining. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + The service key. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Removes all services of type in . + + The . + The service key. + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The service key. + The for chaining. + + + + Indicates that the parameter should be bound using the keyed service registered with the specified key. + + + + + Creates a new instance. + + The key of the keyed service to bind to. + + + + The key of the keyed service to bind to. + + + + + IKeyedServiceProvider is a service provider that can be used to retrieve services using a key in addition + to a type. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type serviceType. -or- null if there is no service object of type serviceType. + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + The of the service. + A service object of type . + Throws an exception if the cannot create the object. + + + + Statics for use with . + + + + + Represents a key that matches any key. + + + + + Specifies the contract for a collection of service descriptors. + + + + + Provides an extension point for creating a container specific builder and an . + + + + + Creates a container builder from an . + + The collection of services + A container builder that can be used to create an . + + + + Creates an from the container builder. + + The container builder + An + + + + Optional service used to determine if the specified type with the specified service key is available + from the . + + + + + Determines if the specified service type with the specified service key is available from the + . + + An object that specifies the type of service object to test. + The of the service. + true if the specified service is a available, false if it is not. + + + + Optional service used to determine if the specified type is available from the . + + + + + Determines if the specified service type is available from the . + + An object that specifies the type of service object to test. + true if the specified service is a available, false if it is not. + + + + The method ends the scope lifetime. Once Dispose + is called, any scoped services that have been resolved from + will be + disposed. + + + + + The used to resolve dependencies from the scope. + + + + + A factory for creating instances of , which is used to create + services within a scope. + + + + + Create an which + contains an used to resolve dependencies from a + newly created scope. + + + An controlling the + lifetime of the scope. Once this is disposed, any scoped services that have been resolved + from the + will also be disposed. + + + + + Optional contract used by + to resolve services if supported by . + + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + A service object of type . + Throws an exception if the cannot create the object. + + + + The result of . + + The to get service arguments from. + Additional constructor arguments. + The instantiated type. + + + + The result of . A delegate to specify a factory method to call to instantiate an instance of type `T` + + The type of the instance being returned + The to get service arguments from. + Additional constructor arguments. + An instance of T + + + + Default implementation of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Makes this collection read-only. + + + After the collection is marked as read-only, any further attempt to modify it throws an . + + + + + Extension methods for adding services to an . + + + Extension methods for adding services to an . + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Describes a service with its service type, implementation, and lifetime. + + + + + Initializes a new instance of with the specified . + + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified . + + The of the service. + A factory used for creating service instances. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + A factory used for creating service instances. + The of the service. + + + + Gets the of the service. + + + + + Get the key of the service, if applicable. + + + + + Gets the of the service. + + + + + Gets the that implements the service. + + + + + Gets the that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the factory used for creating service instances. + + + + + Gets the factory used for creating Keyed service instances. + + + + + Indicates whether the service is a keyed service. + + + + + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + ServiceKeyAttribute can be specified on a parameter to inject the key that was used for + registration/resolution. + + + + + Specifies the lifetime of a service in an . + + + + + Specifies that a single instance of the service will be created. + + + + + Specifies that a new instance of the service will be created for each scope. + + + In ASP.NET Core applications a scope is created around each server request. + + + + + Specifies that a new instance of the service will be created every time it is requested. + + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An enumeration of services of type . + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + A that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + + Indicates that certain members on a specified are accessed dynamically, + for example through . + + + This allows tools to understand which members are being accessed during the execution + of a program. + + This attribute is valid on members whose type is or . + + When this attribute is applied to a location of type , the assumption is + that the string represents a fully qualified type name. + + When this attribute is applied to a class, interface, or struct, the members specified + can be accessed dynamically on instances returned from calling + on instances of that class, interface, or struct. + + If the attribute is applied to a method it's treated as a special case and it implies + the attribute should be applied to the "this" parameter of the method. As such the attribute + should only be used on instance methods of types assignable to System.Type (or string, but no methods + will use it there). + + + + + Initializes a new instance of the class + with the specified member types. + + The types of members dynamically accessed. + + + + Gets the which specifies the type + of members dynamically accessed. + + + + + Specifies the types of members that are dynamically accessed. + + This enumeration has a attribute that allows a + bitwise combination of its member values. + + + + + Specifies no members. + + + + + Specifies the default, parameterless public constructor. + + + + + Specifies all public constructors. + + + + + Specifies all non-public constructors. + + + + + Specifies all public methods. + + + + + Specifies all non-public methods. + + + + + Specifies all public fields. + + + + + Specifies all non-public fields. + + + + + Specifies all public nested types. + + + + + Specifies all non-public nested types. + + + + + Specifies all public properties. + + + + + Specifies all non-public properties. + + + + + Specifies all public events. + + + + + Specifies all non-public events. + + + + + Specifies all interfaces implemented by the type. + + + + + Specifies all members. + + + + + Suppresses reporting of a specific rule violation, allowing multiple suppressions on a + single code artifact. + + + is different than + in that it doesn't have a + . So it is always preserved in the compiled assembly. + + + + + Initializes a new instance of the + class, specifying the category of the tool and the identifier for an analysis rule. + + The category for the attribute. + The identifier of the analysis rule the attribute applies to. + + + + Gets the category identifying the classification of the attribute. + + + The property describes the tool or tool analysis category + for which a message suppression attribute applies. + + + + + Gets the identifier of the analysis tool rule to be suppressed. + + + Concatenated together, the and + properties form a unique check identifier. + + + + + Gets or sets the scope of the code that is relevant for the attribute. + + + The Scope property is an optional argument that specifies the metadata scope for which + the attribute is relevant. + + + + + Gets or sets a fully qualified path that represents the target of the attribute. + + + The property is an optional argument identifying the analysis target + of the attribute. An example value is "System.IO.Stream.ctor():System.Void". + Because it is fully qualified, it can be long, particularly for targets such as parameters. + The analysis tool user interface should be capable of automatically formatting the parameter. + + + + + Gets or sets an optional argument expanding on exclusion criteria. + + + The property is an optional argument that specifies additional + exclusion where the literal metadata target is not sufficiently precise. For example, + the cannot be applied within a method, + and it may be desirable to suppress a violation against a statement in the method that will + give a rule violation, but not against all statements in the method. + + + + + Gets or sets the justification for suppressing the code analysis message. + + + + + Indicates that the specified method requires the ability to generate new code at runtime, + for example through . + + + This allows tools to understand which methods are unsafe to call when compiling ahead of time. + + + + + Initializes a new instance of the class + with the specified message. + + + A message that contains information about the usage of dynamic code. + + + + + Gets a message that contains information about the usage of dynamic code. + + + + + Gets or sets an optional URL that contains more information about the method, + why it requires dynamic code, and what options a consumer has to deal with it. + + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + Specifies that an output may be null even if the corresponding type disallows it. + + + Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns. + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + + Gets the return value condition. + + + Specifies that the output will be non-null if the named parameter is non-null. + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + Applied to a method that will never return under any circumstance. + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + Initializes the attribute with the specified parameter value. + + The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to + the associated parameter matches this value. + + + + Gets the condition parameter value. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + No service for type '{0}' has been registered. + + + The service collection cannot be modified because it is read-only. + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + Multiple constructors were marked with {0}. + + + Constructor marked with {0} does not accept all given argument types. + + + Instances of abstract classes cannot be created. + + + Multiple constructors for type '{0}' were found with length {1}. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and all parameters of a public constructor are either registered as services or passed as arguments. Also ensure no extraneous arguments are provided. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + This service provider doesn't support keyed services. + + + This service descriptor is keyed. Your service provider may not support keyed services. + + + This service descriptor is not keyed. + + + diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll new file mode 100644 index 0000000..f286073 Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml new file mode 100644 index 0000000..2e3353e --- /dev/null +++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml @@ -0,0 +1,2451 @@ + + + + Microsoft.Extensions.DependencyInjection.Abstractions + + + + + Helper code for the various activator services. + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The service provider used to resolve dependencies + The type to activate + Constructor arguments not provided by the . + An activated object of type instanceType + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate instanceType using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Create a delegate that will instantiate a type with constructor arguments provided directly + and/or from an . + + The type to activate + + The types of objects, in order, that will be passed to the returned function as its second parameter + + + A factory that will instantiate type T using an + and an argument array containing objects matching the types defined in argumentTypes + + + + + Instantiate a type with constructor arguments provided directly and/or from an . + + The type to activate + The service provider used to resolve dependencies + Constructor arguments not provided by the . + An activated object of type T + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The type of the service + The service provider used to resolve dependencies + The resolved service or created instance + + + + Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly. + + The service provider + The type of the service + The resolved service or created instance + + + + Marks the constructor to be used when activating type using . + + + + + An implementation that implements . + + + + + Initializes a new instance of the struct. + Wraps an instance of . + + The instance to wrap. + + + + + + + + + + + + + Extension methods for adding and removing services to an . + + + + + Adds the specified to the . + + The . + The to add. + A reference to the current instance of . + + + + Adds a sequence of to the . + + The . + The s to add. + A reference to the current instance of . + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The to add. + + + + Adds the specified to the if the + service type hasn't already been registered. + + The . + The s to add. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + + + + Adds a if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The . + + Use when registering a service implementation of a + service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Adds the specified s if an existing descriptor with the same + and an implementation that does not already exist + in . + + The . + The s. + + Use when registering a service + implementation of a service type that + supports multiple registrations of the same service type. Using + is not idempotent and can add + duplicate + instances if called twice. Using + will prevent registration + of multiple implementation types. + + + + + Removes the first service in with the same service type + as and adds to the collection. + + The . + The to replace with. + The for chaining. + + + + Removes all services of type in . + + The . + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The for chaining. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The factory that creates the service. + The service key. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + + + + Adds the specified as a service + with the implementation + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The implementation type of the service. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The . + The type of the service to register. + The service key. + The factory that creates the service. + + + + Adds the specified as a service + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + + + + Adds the specified as a service + implementation type specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The type of the implementation to use. + The . + The service key. + + + + Adds the specified as a service + with an instance specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The instance of the service to add. + + + + Adds the specified as a service + using the factory specified in + to the if the service type hasn't already been registered. + + The type of the service to add. + The . + The service key. + The factory that creates the service. + + + + Removes all services of type in . + + The . + The service key. + The for chaining. + + + + Removes all services of type in . + + The . + The service type to remove. + The service key. + The for chaining. + + + + Indicates that the parameter should be bound using the keyed service registered with the specified key. + + + + + Creates a new instance. + + The key of the keyed service to bind to. + + + + The key of the keyed service to bind to. + + + + + IKeyedServiceProvider is a service provider that can be used to retrieve services using a key in addition + to a type. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type serviceType. -or- null if there is no service object of type serviceType. + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + The of the service. + A service object of type . + Throws an exception if the cannot create the object. + + + + Statics for use with . + + + + + Represents a key that matches any key. + + + + + Specifies the contract for a collection of service descriptors. + + + + + Provides an extension point for creating a container specific builder and an . + + + + + Creates a container builder from an . + + The collection of services + A container builder that can be used to create an . + + + + Creates an from the container builder. + + The container builder + An + + + + Optional service used to determine if the specified type with the specified service key is available + from the . + + + + + Determines if the specified service type with the specified service key is available from the + . + + An object that specifies the type of service object to test. + The of the service. + true if the specified service is a available, false if it is not. + + + + Optional service used to determine if the specified type is available from the . + + + + + Determines if the specified service type is available from the . + + An object that specifies the type of service object to test. + true if the specified service is a available, false if it is not. + + + + The method ends the scope lifetime. Once Dispose + is called, any scoped services that have been resolved from + will be + disposed. + + + + + The used to resolve dependencies from the scope. + + + + + A factory for creating instances of , which is used to create + services within a scope. + + + + + Create an which + contains an used to resolve dependencies from a + newly created scope. + + + An controlling the + lifetime of the scope. Once this is disposed, any scoped services that have been resolved + from the + will also be disposed. + + + + + Optional contract used by + to resolve services if supported by . + + + + + Gets service of type from the implementing + this interface. + + An object that specifies the type of service object to get. + A service object of type . + Throws an exception if the cannot create the object. + + + + The result of . + + The to get service arguments from. + Additional constructor arguments. + The instantiated type. + + + + The result of . A delegate to specify a factory method to call to instantiate an instance of type `T` + + The type of the instance being returned + The to get service arguments from. + Additional constructor arguments. + An instance of T + + + + Default implementation of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Makes this collection read-only. + + + After the collection is marked as read-only, any further attempt to modify it throws an . + + + + + Extension methods for adding services to an . + + + Extension methods for adding services to an . + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a transient service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a scoped service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation of the type specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The implementation type of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The to add the service to. + The type of the service to register and the implementation to use. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with a + factory specified in to the + specified . + + The type of the service to add. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + implementation type specified in using the + factory specified in to the + specified . + + The type of the service to add. + The type of the implementation to use. + The to add the service to. + The of the service. + The factory that creates the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The type of the service to register. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Adds a singleton service of the type specified in with an + instance specified in to the + specified . + + The to add the service to. + The of the service. + The instance of the service. + A reference to this instance after the operation has completed. + + + + + Describes a service with its service type, implementation, and lifetime. + + + + + Initializes a new instance of with the specified . + + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + The implementing the service. + The of the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified + as a . + + The of the service. + The of the service. + The instance implementing the service. + + + + Initializes a new instance of with the specified . + + The of the service. + A factory used for creating service instances. + The of the service. + + + + Initializes a new instance of with the specified . + + The of the service. + The of the service. + A factory used for creating service instances. + The of the service. + + + + Gets the of the service. + + + + + Get the key of the service, if applicable. + + + + + Gets the of the service. + + + + + Gets the that implements the service. + + + + + Gets the that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the instance that implements the service. + + + + + Gets the factory used for creating service instances. + + + + + Gets the factory used for creating Keyed service instances. + + + + + Indicates whether the service is a keyed service. + + + + + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + and + and the lifetime. + + The type of the service. + The of the service. + The type of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + , + and the lifetime. + + The type of the service. + The type of the implementation. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and the lifetime. + + The type of the service. + The of the service. + The instance of the implementation. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + The type of the implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + Creates an instance of with the specified + , , + and . + + The type of the service. + The of the service. + A factory to create new instances of the service implementation. + The lifetime of the service. + A new instance of . + + + + ServiceKeyAttribute can be specified on a parameter to inject the key that was used for + registration/resolution. + + + + + Specifies the lifetime of a service in an . + + + + + Specifies that a single instance of the service will be created. + + + + + Specifies that a new instance of the service will be created for each scope. + + + In ASP.NET Core applications a scope is created around each server request. + + + + + Specifies that a new instance of the service will be created every time it is requested. + + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + An object that specifies the key of service object to get. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An object that specifies the key of service object to get. + An enumeration of services of type . + + + + Extension methods for getting services from an . + + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type or null if there is no such service. + + + + Get service of type from the . + + The to retrieve the service object from. + An object that specifies the type of service object to get. + A service object of type . + There is no service of type . + + + + Get service of type from the . + + The type of service object to get. + The to retrieve the service object from. + A service object of type . + There is no service of type . + + + + Get an enumeration of services of type from the . + + The type of service object to get. + The to retrieve the services from. + An enumeration of services of type . + + + + Get an enumeration of services of type from the . + + The to retrieve the services from. + An object that specifies the type of service object to get. + An enumeration of services of type . + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + A that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + + Creates a new that can be used to resolve scoped services. + + The to create the scope from. + An that can be used to resolve scoped services. + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + + Indicates that certain members on a specified are accessed dynamically, + for example through . + + + This allows tools to understand which members are being accessed during the execution + of a program. + + This attribute is valid on members whose type is or . + + When this attribute is applied to a location of type , the assumption is + that the string represents a fully qualified type name. + + When this attribute is applied to a class, interface, or struct, the members specified + can be accessed dynamically on instances returned from calling + on instances of that class, interface, or struct. + + If the attribute is applied to a method it's treated as a special case and it implies + the attribute should be applied to the "this" parameter of the method. As such the attribute + should only be used on instance methods of types assignable to System.Type (or string, but no methods + will use it there). + + + + + Initializes a new instance of the class + with the specified member types. + + The types of members dynamically accessed. + + + + Gets the which specifies the type + of members dynamically accessed. + + + + + Specifies the types of members that are dynamically accessed. + + This enumeration has a attribute that allows a + bitwise combination of its member values. + + + + + Specifies no members. + + + + + Specifies the default, parameterless public constructor. + + + + + Specifies all public constructors. + + + + + Specifies all non-public constructors. + + + + + Specifies all public methods. + + + + + Specifies all non-public methods. + + + + + Specifies all public fields. + + + + + Specifies all non-public fields. + + + + + Specifies all public nested types. + + + + + Specifies all non-public nested types. + + + + + Specifies all public properties. + + + + + Specifies all non-public properties. + + + + + Specifies all public events. + + + + + Specifies all non-public events. + + + + + Specifies all interfaces implemented by the type. + + + + + Specifies all members. + + + + + Suppresses reporting of a specific rule violation, allowing multiple suppressions on a + single code artifact. + + + is different than + in that it doesn't have a + . So it is always preserved in the compiled assembly. + + + + + Initializes a new instance of the + class, specifying the category of the tool and the identifier for an analysis rule. + + The category for the attribute. + The identifier of the analysis rule the attribute applies to. + + + + Gets the category identifying the classification of the attribute. + + + The property describes the tool or tool analysis category + for which a message suppression attribute applies. + + + + + Gets the identifier of the analysis tool rule to be suppressed. + + + Concatenated together, the and + properties form a unique check identifier. + + + + + Gets or sets the scope of the code that is relevant for the attribute. + + + The Scope property is an optional argument that specifies the metadata scope for which + the attribute is relevant. + + + + + Gets or sets a fully qualified path that represents the target of the attribute. + + + The property is an optional argument identifying the analysis target + of the attribute. An example value is "System.IO.Stream.ctor():System.Void". + Because it is fully qualified, it can be long, particularly for targets such as parameters. + The analysis tool user interface should be capable of automatically formatting the parameter. + + + + + Gets or sets an optional argument expanding on exclusion criteria. + + + The property is an optional argument that specifies additional + exclusion where the literal metadata target is not sufficiently precise. For example, + the cannot be applied within a method, + and it may be desirable to suppress a violation against a statement in the method that will + give a rule violation, but not against all statements in the method. + + + + + Gets or sets the justification for suppressing the code analysis message. + + + + + Indicates that the specified method requires the ability to generate new code at runtime, + for example through . + + + This allows tools to understand which methods are unsafe to call when compiling ahead of time. + + + + + Initializes a new instance of the class + with the specified message. + + + A message that contains information about the usage of dynamic code. + + + + + Gets a message that contains information about the usage of dynamic code. + + + + + Gets or sets an optional URL that contains more information about the method, + why it requires dynamic code, and what options a consumer has to deal with it. + + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor. + + + No service for type '{0}' has been registered. + + + The service collection cannot be modified because it is read-only. + + + Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'. + + + Multiple constructors were marked with {0}. + + + Constructor marked with {0} does not accept all given argument types. + + + Instances of abstract classes cannot be created. + + + Multiple constructors for type '{0}' were found with length {1}. + + + Unable to resolve service for type '{0}' while attempting to activate '{1}'. + + + A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and all parameters of a public constructor are either registered as services or passed as arguments. Also ensure no extraneous arguments are provided. + + + Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor. + + + This service provider doesn't support keyed services. + + + This service descriptor is keyed. Your service provider may not support keyed services. + + + This service descriptor is not keyed. + + + diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/useSharedDesignerContext.txt b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.8.0.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/.signature.p7s b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/.signature.p7s new file mode 100644 index 0000000..f720f7b Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/.signature.p7s differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/Icon.png b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/Icon.png new file mode 100644 index 0000000..a0f1fdb Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/Icon.png differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/LICENSE.TXT b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/Microsoft.Extensions.Logging.Abstractions.8.0.0.nupkg b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/Microsoft.Extensions.Logging.Abstractions.8.0.0.nupkg new file mode 100644 index 0000000..d1a6ee6 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/Microsoft.Extensions.Logging.Abstractions.8.0.0.nupkg differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/PACKAGE.md b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/PACKAGE.md new file mode 100644 index 0000000..400958a --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/PACKAGE.md @@ -0,0 +1,164 @@ +## About + + + +`Microsoft.Extensions.Logging.Abstractions` provides abstractions of logging. Interfaces defined in this package are implemented by classes in [Microsoft.Extensions.Logging](https://www.nuget.org/packages/Microsoft.Extensions.Logging/) and other logging packages. + +This package includes a logging source generator that produces highly efficient and optimized code for logging message methods. + +## Key Features + + + +* Define main logging abstraction interfaces like ILogger, ILoggerFactory, ILoggerProvider, etc. + +## How to Use + + + +#### Custom logger provider implementation example + +```C# +using Microsoft.Extensions.Logging; + +public sealed class ColorConsoleLogger : ILogger +{ + private readonly string _name; + private readonly Func _getCurrentConfig; + + public ColorConsoleLogger( + string name, + Func getCurrentConfig) => + (_name, _getCurrentConfig) = (name, getCurrentConfig); + + public IDisposable? BeginScope(TState state) where TState : notnull => default!; + + public bool IsEnabled(LogLevel logLevel) => + _getCurrentConfig().LogLevelToColorMap.ContainsKey(logLevel); + + public void Log( + LogLevel logLevel, + EventId eventId, + TState state, + Exception? exception, + Func formatter) + { + if (!IsEnabled(logLevel)) + { + return; + } + + ColorConsoleLoggerConfiguration config = _getCurrentConfig(); + if (config.EventId == 0 || config.EventId == eventId.Id) + { + ConsoleColor originalColor = Console.ForegroundColor; + + Console.ForegroundColor = config.LogLevelToColorMap[logLevel]; + Console.WriteLine($"[{eventId.Id,2}: {logLevel,-12}]"); + + Console.ForegroundColor = originalColor; + Console.Write($" {_name} - "); + + Console.ForegroundColor = config.LogLevelToColorMap[logLevel]; + Console.Write($"{formatter(state, exception)}"); + + Console.ForegroundColor = originalColor; + Console.WriteLine(); + } + } +} + +``` + +#### Create logs + +```csharp + +// Worker class that uses logger implementation of teh interface ILogger + +public sealed class Worker : BackgroundService +{ + private readonly ILogger _logger; + + public Worker(ILogger logger) => + _logger = logger; + + protected override async Task ExecuteAsync(CancellationToken stoppingToken) + { + while (!stoppingToken.IsCancellationRequested) + { + _logger.LogInformation("Worker running at: {time}", DateTimeOffset.UtcNow); + await Task.Delay(1_000, stoppingToken); + } + } +} + +``` + +#### Use source generator + +```csharp +public static partial class Log +{ + [LoggerMessage( + EventId = 0, + Level = LogLevel.Critical, + Message = "Could not open socket to `{hostName}`")] + public static partial void CouldNotOpenSocket(this ILogger logger, string hostName); +} + +public partial class InstanceLoggingExample +{ + private readonly ILogger _logger; + + public InstanceLoggingExample(ILogger logger) + { + _logger = logger; + } + + [LoggerMessage( + EventId = 0, + Level = LogLevel.Critical, + Message = "Could not open socket to `{hostName}`")] + public partial void CouldNotOpenSocket(string hostName); +} + +``` + +## Main Types + + + +The main types provided by this library are: + +* `Microsoft.Extensions.Logging.ILogger` +* `Microsoft.Extensions.Logging.ILoggerProvider` +* `Microsoft.Extensions.Logging.ILoggerFactory` +* `Microsoft.Extensions.Logging.ILogger` +* `Microsoft.Extensions.Logging.LogLevel` +* `Microsoft.Extensions.Logging.Logger` +* `Microsoft.Extensions.Logging.LoggerMessage` +* `Microsoft.Extensions.Logging.Abstractions.NullLogger` + +## Additional Documentation + + + +* [Conceptual documentation](https://learn.microsoft.com/dotnet/core/extensions/logging) +* [API documentation](https://learn.microsoft.com/dotnet/api/microsoft.extensions.logging) + +## Related Packages + + +[Microsoft.Extensions.Logging](https://www.nuget.org/packages/Microsoft.Extensions.Logging) +[Microsoft.Extensions.Logging.Console](https://www.nuget.org/packages/Microsoft.Extensions.Logging.Console) +[Microsoft.Extensions.Logging.Debug](https://www.nuget.org/packages/Microsoft.Extensions.Logging.Debug) +[Microsoft.Extensions.Logging.EventSource](https://www.nuget.org/packages/Microsoft.Extensions.Logging.EventSource) +[Microsoft.Extensions.Logging.EventLog](https://www.nuget.org/packages/Microsoft.Extensions.Logging.EventLog) +[Microsoft.Extensions.Logging.TraceSource](https://www.nuget.org/packages/Microsoft.Extensions.Logging.TraceSource) + +## Feedback & Contributing + + + +Microsoft.Extensions.Logging.Abstractions is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime). \ No newline at end of file diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/THIRD-PARTY-NOTICES.TXT b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..4b40333 --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,1272 @@ +.NET Runtime uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Runtime software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +https://www.unicode.org/license.html + +Copyright © 1991-2022 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +https://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.13, October 13th, 2022 + + Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR +COPYRIGHT HOLDERS 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. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for vectorized hex parsing +-------------------------------------------------------- + +Copyright (c) 2022, Geoff Langdale +Copyright (c) 2022, Wojciech Mula +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for RFC 3492 +--------------------------- + +The punycode implementation is based on the sample code in RFC 3492 + +Copyright (C) The Internet Society (2003). All Rights Reserved. + +This document and translations of it may be copied and furnished to +others, and derivative works that comment on or otherwise explain it +or assist in its implementation may be prepared, copied, published +and distributed, in whole or in part, without restriction of any +kind, provided that the above copyright notice and this paragraph are +included on all such copies and derivative works. However, this +document itself may not be modified in any way, such as by removing +the copyright notice or references to the Internet Society or other +Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for +copyrights defined in the Internet Standards process must be +followed, or as required to translate it into languages other than +English. + +The limited permissions granted above are perpetual and will not be +revoked by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an +"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Copyright(C) The Internet Society 1997. All Rights Reserved. + +This document and translations of it may be copied and furnished to others, +and derivative works that comment on or otherwise explain it or assist in +its implementation may be prepared, copied, published and distributed, in +whole or in part, without restriction of any kind, provided that the above +copyright notice and this paragraph are included on all such copies and +derivative works.However, this document itself may not be modified in any +way, such as by removing the copyright notice or references to the Internet +Society or other Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for copyrights +defined in the Internet Standards process must be followed, or as required +to translate it into languages other than English. + +The limited permissions granted above are perpetual and will not be revoked +by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an "AS IS" +basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE +DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO +ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY +RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A +PARTICULAR PURPOSE. + +License notice for Algorithm from RFC 4122 - +A Universally Unique IDentifier (UUID) URN Namespace +---------------------------------------------------- + +Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. +Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & +Digital Equipment Corporation, Maynard, Mass. +Copyright (c) 1998 Microsoft. +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: permission to use, copy, +modify, and distribute this file for any purpose is hereby +granted without fee, provided that the above copyright notices and +this notice appears in all source code copies, and that none of +the names of Open Software Foundation, Inc., Hewlett-Packard +Company, Microsoft, or Digital Equipment Corporation be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Neither Open Software +Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital +Equipment Corporation makes any representations about the +suitability of this software for any purpose." + +License notice for The LLVM Compiler Infrastructure (Legacy License) +-------------------------------------------------------------------- + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +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 +CONTRIBUTORS OR COPYRIGHT HOLDERS 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 WITH THE +SOFTWARE. + +License notice for Bob Jenkins +------------------------------ + +By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this +code any way you wish, private, educational, or commercial. It's free. + +License notice for Greg Parker +------------------------------ + +Greg Parker gparker@cs.stanford.edu December 2000 +This code is in the public domain and may be copied or modified without +permission. + +License notice for libunwind based code +---------------------------------------- + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for Printing Floating-Point Numbers (Dragon4) +------------------------------------------------------------ + +/****************************************************************************** + Copyright (c) 2014 Ryan Juckett + http://www.ryanjuckett.com/ + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source + distribution. +******************************************************************************/ + +License notice for Printing Floating-point Numbers (Grisu3) +----------------------------------------------------------- + +Copyright 2012 the V8 project authors. All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xxHash +------------------------- + +xxHash - Extremely Fast Hash algorithm +Header File +Copyright (C) 2012-2021 Yann Collet + +BSD 2-Clause License (https://www.opensource.org/licenses/bsd-license.php) + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +You can contact the author at: + - xxHash homepage: https://www.xxhash.com + - xxHash source repository: https://github.com/Cyan4973/xxHash + +License notice for Berkeley SoftFloat Release 3e +------------------------------------------------ + +https://github.com/ucb-bar/berkeley-softfloat-3 +https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt + +License for Berkeley SoftFloat Release 3e + +John R. Hauser +2018 January 20 + +The following applies to the whole of SoftFloat Release 3e as well as to +each source file individually. + +Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the +University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions, and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE +DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xoshiro RNGs +-------------------------------- + +Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org) + +To the extent possible under law, the author has dedicated all copyright +and related and neighboring rights to this software to the public domain +worldwide. This software is distributed without any warranty. + +See . + +License for fastmod (https://github.com/lemire/fastmod), ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data) and fastrange (https://github.com/lemire/fastrange) +-------------------------------------- + + Copyright 2018 Daniel Lemire + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +License for sse4-strstr (https://github.com/WojciechMula/sse4-strstr) +-------------------------------------- + + Copyright (c) 2008-2016, Wojciech Mula + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for The C++ REST SDK +----------------------------------- + +C++ REST SDK + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for MessagePack-CSharp +------------------------------------- + +MessagePack for C# + +MIT License + +Copyright (c) 2017 Yoshifumi Kawai + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for lz4net +------------------------------------- + +lz4net + +Copyright (c) 2013-2017, Milosz Krajewski + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Nerdbank.Streams +----------------------------------- + +The MIT License (MIT) + +Copyright (c) Andrew Arnott + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for RapidJSON +---------------------------- + +Tencent is pleased to support the open source community by making RapidJSON available. + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. + +Licensed under the MIT License (the "License"); you may not use this file except +in compliance with the License. You may obtain a copy of the License at + +http://opensource.org/licenses/MIT + +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. + +License notice for DirectX Math Library +--------------------------------------- + +https://github.com/microsoft/DirectXMath/blob/master/LICENSE + + The MIT License (MIT) + +Copyright (c) 2011-2020 Microsoft Corp + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +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 OR COPYRIGHT +HOLDERS 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. + +License notice for ldap4net +--------------------------- + +The MIT License (MIT) + +Copyright (c) 2018 Alexander Chermyanin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for vectorized sorting code +------------------------------------------ + +MIT License + +Copyright (c) 2020 Dan Shechter + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for musl +----------------------- + +musl as a whole is licensed under the following standard MIT license: + +Copyright © 2005-2020 Rich Felker, et al. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + + +License notice for "Faster Unsigned Division by Constants" +------------------------------ + +Reference implementations of computing and using the "magic number" approach to dividing +by constants, including codegen instructions. The unsigned division incorporates the +"round down" optimization per ridiculous_fish. + +This is free and unencumbered software. Any copyright is dedicated to the Public Domain. + + +License notice for mimalloc +----------------------------------- + +MIT License + +Copyright (c) 2019 Microsoft Corporation, Daan Leijen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for The LLVM Project +----------------------------------- + +Copyright 2019 LLVM Project + +Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions; +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +https://llvm.org/LICENSE.txt + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +License notice for Apple header files +------------------------------------- + +Copyright (c) 1980, 1986, 1993 + The Regents of the University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. +4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +License notice for JavaScript queues +------------------------------------- + +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. + +Statement of Purpose +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: +the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; +moral rights retained by the original author(s) and/or performer(s); +publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; +rights protecting the extraction, dissemination, use and reuse of data in a Work; +database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and +other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. +4. Limitations and Disclaimers. +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. + + +License notice for FastFloat algorithm +------------------------------------- +MIT License +Copyright (c) 2021 csFastFloat authors +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License notice for MsQuic +-------------------------------------- + +Copyright (c) Microsoft Corporation. +Licensed under the MIT License. + +Available at +https://github.com/microsoft/msquic/blob/main/LICENSE + +License notice for m-ou-se/floatconv +------------------------------- + +Copyright (c) 2020 Mara Bos +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for code from The Practice of Programming +------------------------------- + +Copyright (C) 1999 Lucent Technologies + +Excerpted from 'The Practice of Programming +by Brian W. Kernighan and Rob Pike + +You may use this code for any purpose, as long as you leave the copyright notice and book citation attached. + +Notice for Euclidean Affine Functions and Applications to Calendar +Algorithms +------------------------------- + +Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar +Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf + +License notice for amd/aocl-libm-ose +------------------------------- + +Copyright (C) 2008-2020 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +License notice for fmtlib/fmt +------------------------------- + +Formatting library for C++ + +Copyright (c) 2012 - present, Victor Zverovich + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License for Jb Evain +--------------------- + +Copyright (c) 2006 Jb Evain (jbevain@gmail.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +License for MurmurHash3 +-------------------------------------- + +https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp + +MurmurHash3 was written by Austin Appleby, and is placed in the public +domain. The author hereby disclaims copyright to this source + +License for Fast CRC Computation +-------------------------------------- + +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc32_ieee_by4.asm +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc64_ecma_norm_by8.asm + +Copyright(c) 2011-2015 Intel Corporation All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License for C# Implementation of Fast CRC Computation +----------------------------------------------------- + +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/src/ImageSharp/Formats/Png/Zlib/Crc32.cs + +Copyright (c) Six Labors. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/LICENSE diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll new file mode 100644 index 0000000..f93a754 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..eabb55f Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..c477336 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..f6341b9 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..486354b Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..f7d1b72 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..a556d43 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..e4a27fd Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..dcaa4a0 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..3c7cf12 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..92625c9 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..94e5a7f Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..a230b0e Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..ce2dcd9 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll new file mode 100644 index 0000000..825653a Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..eabb55f Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..c477336 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..f6341b9 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..486354b Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..f7d1b72 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..a556d43 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..e4a27fd Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..dcaa4a0 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..3c7cf12 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..92625c9 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..94e5a7f Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..a230b0e Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..ce2dcd9 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll new file mode 100644 index 0000000..e0400db Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..eabb55f Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..c477336 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..f6341b9 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..486354b Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..f7d1b72 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..a556d43 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..e4a27fd Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..dcaa4a0 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..3c7cf12 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..92625c9 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..94e5a7f Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..a230b0e Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll new file mode 100644 index 0000000..ce2dcd9 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets new file mode 100644 index 0000000..793feee --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets new file mode 100644 index 0000000..82c0555 --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets @@ -0,0 +1,31 @@ + + + + + <_Microsoft_Extensions_Logging_AbstractionsAnalyzer Include="@(Analyzer)" Condition="'%(Analyzer.NuGetPackageId)' == 'Microsoft.Extensions.Logging.Abstractions'" /> + + + + + + + + + + + + + + + + + + + diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets new file mode 100644 index 0000000..82c0555 --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/net6.0/Microsoft.Extensions.Logging.Abstractions.targets @@ -0,0 +1,31 @@ + + + + + <_Microsoft_Extensions_Logging_AbstractionsAnalyzer Include="@(Analyzer)" Condition="'%(Analyzer.NuGetPackageId)' == 'Microsoft.Extensions.Logging.Abstractions'" /> + + + + + + + + + + + + + + + + + + + diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets new file mode 100644 index 0000000..32cdf33 --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets new file mode 100644 index 0000000..82c0555 --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets @@ -0,0 +1,31 @@ + + + + + <_Microsoft_Extensions_Logging_AbstractionsAnalyzer Include="@(Analyzer)" Condition="'%(Analyzer.NuGetPackageId)' == 'Microsoft.Extensions.Logging.Abstractions'" /> + + + + + + + + + + + + + + + + + + + diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.Logging.Abstractions.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.Logging.Abstractions.dll new file mode 100644 index 0000000..b8dd652 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.Logging.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.Logging.Abstractions.xml b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.Logging.Abstractions.xml new file mode 100644 index 0000000..105e4d8 --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net462/Microsoft.Extensions.Logging.Abstractions.xml @@ -0,0 +1,1350 @@ + + + + Microsoft.Extensions.Logging.Abstractions + + + + + Identifies a logging event. The primary identifier is the "Id" property, with the "Name" property providing a short description of this type of event. + + + + + Implicitly creates an EventId from the given . + + The to convert to an EventId. + + + + Checks if two specified instances have the same value. They are equal if they have the same Id. + + The first . + The second . + if the objects are equal. + + + + Checks if two specified instances have different values. + + The first . + The second . + if the objects are not equal. + + + + Initializes an instance of the struct. + + The numeric identifier for this event. + The name of this event. + + + + Gets the numeric identifier for this event. + + + + + Gets the name of this event. + + + + + + + + Indicates whether the current object is equal to another object of the same type. Two events are equal if they have the same id. + + An object to compare with this object. + if the current object is equal to the other parameter; otherwise, . + + + + + + + + + + LogValues to enable formatting options supported by . + This also enables using {NamedformatItem} in the format string. + + + + + Represents a storage of common scope data. + + + + + Executes callback for each currently active scope objects in order of creation. + All callbacks are guaranteed to be called inline from this method. + + The callback to be executed for every scope object + The state object to be passed into the callback + The type of state to accept. + + + + Adds scope object to the list + + The scope object + The token that removes scope on dispose. + + + + Represents a type used to perform logging. + + Aggregates most logging patterns to a single method. + + + + Writes a log entry. + + Entry will be written on this level. + Id of the event. + The entry to be written. Can be also an object. + The exception related to this entry. + Function to create a message of the and . + The type of the object to be written. + + + + Checks if the given is enabled. + + Level to be checked. + true if enabled. + + + + Begins a logical operation scope. + + The identifier for the scope. + The type of the state to begin scope for. + An that ends the logical operation scope on dispose. + + + + Represents a type used to configure the logging system and create instances of from + the registered s. + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The . + + + + Adds an to the logging system. + + The . + + + + Represents a type that can create instances of . + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The instance of that was created. + + + + A generic interface for logging where the category name is derived from the specified + type name. + Generally used to enable activation of a named from dependency injection. + + The type whose name is used for the logger category name. + + + + An interface for configuring logging providers. + + + + + Gets the where Logging services are configured. + + + + + Represents a that is able to consume external scope information. + + + + + Sets external scope information source for logger provider. + + The provider of scope data. + + + + Options for and its overloads + + + + + Gets or sets the flag to skip IsEnabled check for the logging method. + + + + + Holds the information for a single log entry. + + + + + Initializes an instance of the LogEntry struct. + + The log level. + The category name for the log. + The log event Id. + The state for which log is being written. + The log exception. + The formatter. + + + + Gets the LogLevel + + + + + Gets the log category + + + + + Gets the log EventId + + + + + Gets the TState + + + + + Gets the log exception + + + + + Gets the formatter + + + + + Minimalistic logger that does nothing. + + + + + Returns the shared instance of . + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + An used to create instance of + that logs nothing. + + + + + Creates a new instance. + + + + + Returns the shared instance of . + + + + + + This returns a instance which logs nothing. + + + + + + This method ignores the parameter and does nothing. + + + + + + + + Provider for the . + + + + + Returns an instance of . + + + + + + + + + + + Minimalistic logger that does nothing. + + + + + Returns an instance of . + + An instance of . + + + + + + + + This method ignores the parameters and does nothing. + + + + + + + + ILogger extension methods for common scenarios. + + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, "Processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug("Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, "Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace("Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, "Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation("Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, "Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning("Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, "Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError("Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, "Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical("Processing request from {Address}", address) + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats the message and creates a scope. + + The to create the scope in. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + A disposable scope object. Can be null. + + using(logger.BeginScope("Processing request from {Address}", address)) + { + } + + + + + Default implementation of + + + + + Creates a new . + + + + + + + + + + + ILoggerFactory extension methods for common scenarios. + + + + + Creates a new instance using the full name of the given type. + + The factory. + The type. + The that was created. + + + + Creates a new instance using the full name of the given . + + The factory. + The type. + The that was created. + + + + Creates delegates which can be later cached to log messages in a performant way. + + + + + Creates a delegate which can be invoked to create a log scope. + + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Provides information to guide the production of a strongly-typed logging method. + + + The method this attribute is applied to: + - Must be a partial method. + - Must return void. + - Must not be generic. + - Must have an as one of its parameters. + - Must have a as one of its parameters. + - None of the parameters can be generic. + + + + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log event Id. + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + Format string of the log message. + + + + Gets the logging event id for the logging method. + + + + + Gets or sets the logging event name for the logging method. + + + This will equal the method name if not specified. + + + + + Gets the logging level for the logging method. + + + + + Gets the message text for the logging method. + + + + + Gets the flag to skip IsEnabled check for the logging method. + + + + + Delegates to a new instance using the full name of the given type, created by the + provided . + + The type. + + + + Creates a new . + + The factory. + + + + + + + + + + + + + Defines logging severity levels. + + + + + Logs that contain the most detailed messages. These messages may contain sensitive application data. + These messages are disabled by default and should never be enabled in a production environment. + + + + + Logs that are used for interactive investigation during development. These logs should primarily contain + information useful for debugging and have no long-term value. + + + + + Logs that track the general flow of the application. These logs should have long-term value. + + + + + Logs that highlight an abnormal or unexpected event in the application flow, but do not otherwise cause the + application execution to stop. + + + + + Logs that highlight when the current flow of execution is stopped due to a failure. These should indicate a + failure in the current activity, not an application-wide failure. + + + + + Logs that describe an unrecoverable application or system crash, or a catastrophic failure that requires + immediate attention. + + + + + Not used for writing log messages. Specifies that a logging category should not write any messages. + + + + + Formatter to convert the named format items like {NamedformatItem} to format. + + + + + Scope provider that does nothing. + + + + + Returns a cached instance of . + + + + + + + + + + + An empty scope without any logic + + + + + + + + Pretty print a type name. + + The . + true to print a fully qualified name. + true to include generic parameter names. + true to include generic parameters. + Character to use as a delimiter in nested type names + The pretty printed type name. + + + + Get a pinnable reference to the builder. + Does not ensure there is a null char after + This overload is pattern matched in the C# 7.3+ compiler so you can omit + the explicit method call, and write eg "fixed (char* c = builder)" + + + + + Get a pinnable reference to the builder. + + Ensures that the builder has a null char after + + + Returns the underlying storage of the builder. + + + + Returns a span around the contents of the builder. + + Ensures that the builder has a null char after + + + + Resize the internal buffer either by doubling current buffer size or + by adding to + whichever is greater. + + + Number of chars requested beyond current position. + + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + The format string '{0}' does not have the expected number of named parameters. Expected {1} parameter(s) but found {2} parameter(s). + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + Specifies that an output may be null even if the corresponding type disallows it. + + + Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns. + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + + Gets the return value condition. + + + Specifies that the output will be non-null if the named parameter is non-null. + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + Applied to a method that will never return under any circumstance. + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + Initializes the attribute with the specified parameter value. + + The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to + the associated parameter matches this value. + + + + Gets the condition parameter value. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll new file mode 100644 index 0000000..d30d316 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.Logging.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml new file mode 100644 index 0000000..893f5eb --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net6.0/Microsoft.Extensions.Logging.Abstractions.xml @@ -0,0 +1,1241 @@ + + + + Microsoft.Extensions.Logging.Abstractions + + + + + Identifies a logging event. The primary identifier is the "Id" property, with the "Name" property providing a short description of this type of event. + + + + + Implicitly creates an EventId from the given . + + The to convert to an EventId. + + + + Checks if two specified instances have the same value. They are equal if they have the same Id. + + The first . + The second . + if the objects are equal. + + + + Checks if two specified instances have different values. + + The first . + The second . + if the objects are not equal. + + + + Initializes an instance of the struct. + + The numeric identifier for this event. + The name of this event. + + + + Gets the numeric identifier for this event. + + + + + Gets the name of this event. + + + + + + + + Indicates whether the current object is equal to another object of the same type. Two events are equal if they have the same id. + + An object to compare with this object. + if the current object is equal to the other parameter; otherwise, . + + + + + + + + + + LogValues to enable formatting options supported by . + This also enables using {NamedformatItem} in the format string. + + + + + Represents a storage of common scope data. + + + + + Executes callback for each currently active scope objects in order of creation. + All callbacks are guaranteed to be called inline from this method. + + The callback to be executed for every scope object + The state object to be passed into the callback + The type of state to accept. + + + + Adds scope object to the list + + The scope object + The token that removes scope on dispose. + + + + Represents a type used to perform logging. + + Aggregates most logging patterns to a single method. + + + + Writes a log entry. + + Entry will be written on this level. + Id of the event. + The entry to be written. Can be also an object. + The exception related to this entry. + Function to create a message of the and . + The type of the object to be written. + + + + Checks if the given is enabled. + + Level to be checked. + true if enabled. + + + + Begins a logical operation scope. + + The identifier for the scope. + The type of the state to begin scope for. + An that ends the logical operation scope on dispose. + + + + Represents a type used to configure the logging system and create instances of from + the registered s. + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The . + + + + Adds an to the logging system. + + The . + + + + Represents a type that can create instances of . + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The instance of that was created. + + + + A generic interface for logging where the category name is derived from the specified + type name. + Generally used to enable activation of a named from dependency injection. + + The type whose name is used for the logger category name. + + + + An interface for configuring logging providers. + + + + + Gets the where Logging services are configured. + + + + + Represents a that is able to consume external scope information. + + + + + Sets external scope information source for logger provider. + + The provider of scope data. + + + + Options for and its overloads + + + + + Gets or sets the flag to skip IsEnabled check for the logging method. + + + + + Holds the information for a single log entry. + + + + + Initializes an instance of the LogEntry struct. + + The log level. + The category name for the log. + The log event Id. + The state for which log is being written. + The log exception. + The formatter. + + + + Gets the LogLevel + + + + + Gets the log category + + + + + Gets the log EventId + + + + + Gets the TState + + + + + Gets the log exception + + + + + Gets the formatter + + + + + Minimalistic logger that does nothing. + + + + + Returns the shared instance of . + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + An used to create instance of + that logs nothing. + + + + + Creates a new instance. + + + + + Returns the shared instance of . + + + + + + This returns a instance which logs nothing. + + + + + + This method ignores the parameter and does nothing. + + + + + + + + Provider for the . + + + + + Returns an instance of . + + + + + + + + + + + Minimalistic logger that does nothing. + + + + + Returns an instance of . + + An instance of . + + + + + + + + This method ignores the parameters and does nothing. + + + + + + + + ILogger extension methods for common scenarios. + + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, "Processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug("Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, "Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace("Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, "Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation("Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, "Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning("Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, "Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError("Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, "Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical("Processing request from {Address}", address) + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats the message and creates a scope. + + The to create the scope in. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + A disposable scope object. Can be null. + + using(logger.BeginScope("Processing request from {Address}", address)) + { + } + + + + + Default implementation of + + + + + Creates a new . + + + + + + + + + + + ILoggerFactory extension methods for common scenarios. + + + + + Creates a new instance using the full name of the given type. + + The factory. + The type. + The that was created. + + + + Creates a new instance using the full name of the given . + + The factory. + The type. + The that was created. + + + + Creates delegates which can be later cached to log messages in a performant way. + + + + + Creates a delegate which can be invoked to create a log scope. + + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Provides information to guide the production of a strongly-typed logging method. + + + The method this attribute is applied to: + - Must be a partial method. + - Must return void. + - Must not be generic. + - Must have an as one of its parameters. + - Must have a as one of its parameters. + - None of the parameters can be generic. + + + + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log event Id. + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + Format string of the log message. + + + + Gets the logging event id for the logging method. + + + + + Gets or sets the logging event name for the logging method. + + + This will equal the method name if not specified. + + + + + Gets the logging level for the logging method. + + + + + Gets the message text for the logging method. + + + + + Gets the flag to skip IsEnabled check for the logging method. + + + + + Delegates to a new instance using the full name of the given type, created by the + provided . + + The type. + + + + Creates a new . + + The factory. + + + + + + + + + + + + + Defines logging severity levels. + + + + + Logs that contain the most detailed messages. These messages may contain sensitive application data. + These messages are disabled by default and should never be enabled in a production environment. + + + + + Logs that are used for interactive investigation during development. These logs should primarily contain + information useful for debugging and have no long-term value. + + + + + Logs that track the general flow of the application. These logs should have long-term value. + + + + + Logs that highlight an abnormal or unexpected event in the application flow, but do not otherwise cause the + application execution to stop. + + + + + Logs that highlight when the current flow of execution is stopped due to a failure. These should indicate a + failure in the current activity, not an application-wide failure. + + + + + Logs that describe an unrecoverable application or system crash, or a catastrophic failure that requires + immediate attention. + + + + + Not used for writing log messages. Specifies that a logging category should not write any messages. + + + + + Formatter to convert the named format items like {NamedformatItem} to format. + + + + + Scope provider that does nothing. + + + + + Returns a cached instance of . + + + + + + + + + + + An empty scope without any logic + + + + + + + + Pretty print a type name. + + The . + true to print a fully qualified name. + true to include generic parameter names. + true to include generic parameters. + Character to use as a delimiter in nested type names + The pretty printed type name. + + + + Get a pinnable reference to the builder. + Does not ensure there is a null char after + This overload is pattern matched in the C# 7.3+ compiler so you can omit + the explicit method call, and write eg "fixed (char* c = builder)" + + + + + Get a pinnable reference to the builder. + + Ensures that the builder has a null char after + + + Returns the underlying storage of the builder. + + + + Returns a span around the contents of the builder. + + Ensures that the builder has a null char after + + + + Resize the internal buffer either by doubling current buffer size or + by adding to + whichever is greater. + + + Number of chars requested beyond current position. + + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + The format string '{0}' does not have the expected number of named parameters. Expected {1} parameter(s) but found {2} parameter(s). + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.Logging.Abstractions.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.Logging.Abstractions.dll new file mode 100644 index 0000000..ce86883 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.Logging.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.Logging.Abstractions.xml b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.Logging.Abstractions.xml new file mode 100644 index 0000000..8017040 --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net7.0/Microsoft.Extensions.Logging.Abstractions.xml @@ -0,0 +1,1170 @@ + + + + Microsoft.Extensions.Logging.Abstractions + + + + + Identifies a logging event. The primary identifier is the "Id" property, with the "Name" property providing a short description of this type of event. + + + + + Implicitly creates an EventId from the given . + + The to convert to an EventId. + + + + Checks if two specified instances have the same value. They are equal if they have the same Id. + + The first . + The second . + if the objects are equal. + + + + Checks if two specified instances have different values. + + The first . + The second . + if the objects are not equal. + + + + Initializes an instance of the struct. + + The numeric identifier for this event. + The name of this event. + + + + Gets the numeric identifier for this event. + + + + + Gets the name of this event. + + + + + + + + Indicates whether the current object is equal to another object of the same type. Two events are equal if they have the same id. + + An object to compare with this object. + if the current object is equal to the other parameter; otherwise, . + + + + + + + + + + LogValues to enable formatting options supported by . + This also enables using {NamedformatItem} in the format string. + + + + + Represents a storage of common scope data. + + + + + Executes callback for each currently active scope objects in order of creation. + All callbacks are guaranteed to be called inline from this method. + + The callback to be executed for every scope object + The state object to be passed into the callback + The type of state to accept. + + + + Adds scope object to the list + + The scope object + The token that removes scope on dispose. + + + + Represents a type used to perform logging. + + Aggregates most logging patterns to a single method. + + + + Writes a log entry. + + Entry will be written on this level. + Id of the event. + The entry to be written. Can be also an object. + The exception related to this entry. + Function to create a message of the and . + The type of the object to be written. + + + + Checks if the given is enabled. + + Level to be checked. + true if enabled. + + + + Begins a logical operation scope. + + The identifier for the scope. + The type of the state to begin scope for. + An that ends the logical operation scope on dispose. + + + + Represents a type used to configure the logging system and create instances of from + the registered s. + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The . + + + + Adds an to the logging system. + + The . + + + + Represents a type that can create instances of . + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The instance of that was created. + + + + A generic interface for logging where the category name is derived from the specified + type name. + Generally used to enable activation of a named from dependency injection. + + The type whose name is used for the logger category name. + + + + An interface for configuring logging providers. + + + + + Gets the where Logging services are configured. + + + + + Represents a that is able to consume external scope information. + + + + + Sets external scope information source for logger provider. + + The provider of scope data. + + + + Options for and its overloads + + + + + Gets or sets the flag to skip IsEnabled check for the logging method. + + + + + Holds the information for a single log entry. + + + + + Initializes an instance of the LogEntry struct. + + The log level. + The category name for the log. + The log event Id. + The state for which log is being written. + The log exception. + The formatter. + + + + Gets the LogLevel + + + + + Gets the log category + + + + + Gets the log EventId + + + + + Gets the TState + + + + + Gets the log exception + + + + + Gets the formatter + + + + + Minimalistic logger that does nothing. + + + + + Returns the shared instance of . + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + An used to create instance of + that logs nothing. + + + + + Creates a new instance. + + + + + Returns the shared instance of . + + + + + + This returns a instance which logs nothing. + + + + + + This method ignores the parameter and does nothing. + + + + + + + + Provider for the . + + + + + Returns an instance of . + + + + + + + + + + + Minimalistic logger that does nothing. + + + + + Returns an instance of . + + An instance of . + + + + + + + + This method ignores the parameters and does nothing. + + + + + + + + ILogger extension methods for common scenarios. + + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, "Processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug("Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, "Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace("Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, "Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation("Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, "Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning("Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, "Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError("Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, "Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical("Processing request from {Address}", address) + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats the message and creates a scope. + + The to create the scope in. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + A disposable scope object. Can be null. + + using(logger.BeginScope("Processing request from {Address}", address)) + { + } + + + + + Default implementation of + + + + + Creates a new . + + + + + + + + + + + ILoggerFactory extension methods for common scenarios. + + + + + Creates a new instance using the full name of the given type. + + The factory. + The type. + The that was created. + + + + Creates a new instance using the full name of the given . + + The factory. + The type. + The that was created. + + + + Creates delegates which can be later cached to log messages in a performant way. + + + + + Creates a delegate which can be invoked to create a log scope. + + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Provides information to guide the production of a strongly-typed logging method. + + + The method this attribute is applied to: + - Must be a partial method. + - Must return void. + - Must not be generic. + - Must have an as one of its parameters. + - Must have a as one of its parameters. + - None of the parameters can be generic. + + + + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log event Id. + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + Format string of the log message. + + + + Gets the logging event id for the logging method. + + + + + Gets or sets the logging event name for the logging method. + + + This will equal the method name if not specified. + + + + + Gets the logging level for the logging method. + + + + + Gets the message text for the logging method. + + + + + Gets the flag to skip IsEnabled check for the logging method. + + + + + Delegates to a new instance using the full name of the given type, created by the + provided . + + The type. + + + + Creates a new . + + The factory. + + + + + + + + + + + + + Defines logging severity levels. + + + + + Logs that contain the most detailed messages. These messages may contain sensitive application data. + These messages are disabled by default and should never be enabled in a production environment. + + + + + Logs that are used for interactive investigation during development. These logs should primarily contain + information useful for debugging and have no long-term value. + + + + + Logs that track the general flow of the application. These logs should have long-term value. + + + + + Logs that highlight an abnormal or unexpected event in the application flow, but do not otherwise cause the + application execution to stop. + + + + + Logs that highlight when the current flow of execution is stopped due to a failure. These should indicate a + failure in the current activity, not an application-wide failure. + + + + + Logs that describe an unrecoverable application or system crash, or a catastrophic failure that requires + immediate attention. + + + + + Not used for writing log messages. Specifies that a logging category should not write any messages. + + + + + Formatter to convert the named format items like {NamedformatItem} to format. + + + + + Scope provider that does nothing. + + + + + Returns a cached instance of . + + + + + + + + + + + An empty scope without any logic + + + + + + + + Pretty print a type name. + + The . + true to print a fully qualified name. + true to include generic parameter names. + true to include generic parameters. + Character to use as a delimiter in nested type names + The pretty printed type name. + + + + Get a pinnable reference to the builder. + Does not ensure there is a null char after + This overload is pattern matched in the C# 7.3+ compiler so you can omit + the explicit method call, and write eg "fixed (char* c = builder)" + + + + + Get a pinnable reference to the builder. + + Ensures that the builder has a null char after + + + Returns the underlying storage of the builder. + + + + Returns a span around the contents of the builder. + + Ensures that the builder has a null char after + + + + Resize the internal buffer either by doubling current buffer size or + by adding to + whichever is greater. + + + Number of chars requested beyond current position. + + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + The format string '{0}' does not have the expected number of named parameters. Expected {1} parameter(s) but found {2} parameter(s). + + + diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll new file mode 100644 index 0000000..085f415 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml new file mode 100644 index 0000000..8017040 --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml @@ -0,0 +1,1170 @@ + + + + Microsoft.Extensions.Logging.Abstractions + + + + + Identifies a logging event. The primary identifier is the "Id" property, with the "Name" property providing a short description of this type of event. + + + + + Implicitly creates an EventId from the given . + + The to convert to an EventId. + + + + Checks if two specified instances have the same value. They are equal if they have the same Id. + + The first . + The second . + if the objects are equal. + + + + Checks if two specified instances have different values. + + The first . + The second . + if the objects are not equal. + + + + Initializes an instance of the struct. + + The numeric identifier for this event. + The name of this event. + + + + Gets the numeric identifier for this event. + + + + + Gets the name of this event. + + + + + + + + Indicates whether the current object is equal to another object of the same type. Two events are equal if they have the same id. + + An object to compare with this object. + if the current object is equal to the other parameter; otherwise, . + + + + + + + + + + LogValues to enable formatting options supported by . + This also enables using {NamedformatItem} in the format string. + + + + + Represents a storage of common scope data. + + + + + Executes callback for each currently active scope objects in order of creation. + All callbacks are guaranteed to be called inline from this method. + + The callback to be executed for every scope object + The state object to be passed into the callback + The type of state to accept. + + + + Adds scope object to the list + + The scope object + The token that removes scope on dispose. + + + + Represents a type used to perform logging. + + Aggregates most logging patterns to a single method. + + + + Writes a log entry. + + Entry will be written on this level. + Id of the event. + The entry to be written. Can be also an object. + The exception related to this entry. + Function to create a message of the and . + The type of the object to be written. + + + + Checks if the given is enabled. + + Level to be checked. + true if enabled. + + + + Begins a logical operation scope. + + The identifier for the scope. + The type of the state to begin scope for. + An that ends the logical operation scope on dispose. + + + + Represents a type used to configure the logging system and create instances of from + the registered s. + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The . + + + + Adds an to the logging system. + + The . + + + + Represents a type that can create instances of . + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The instance of that was created. + + + + A generic interface for logging where the category name is derived from the specified + type name. + Generally used to enable activation of a named from dependency injection. + + The type whose name is used for the logger category name. + + + + An interface for configuring logging providers. + + + + + Gets the where Logging services are configured. + + + + + Represents a that is able to consume external scope information. + + + + + Sets external scope information source for logger provider. + + The provider of scope data. + + + + Options for and its overloads + + + + + Gets or sets the flag to skip IsEnabled check for the logging method. + + + + + Holds the information for a single log entry. + + + + + Initializes an instance of the LogEntry struct. + + The log level. + The category name for the log. + The log event Id. + The state for which log is being written. + The log exception. + The formatter. + + + + Gets the LogLevel + + + + + Gets the log category + + + + + Gets the log EventId + + + + + Gets the TState + + + + + Gets the log exception + + + + + Gets the formatter + + + + + Minimalistic logger that does nothing. + + + + + Returns the shared instance of . + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + An used to create instance of + that logs nothing. + + + + + Creates a new instance. + + + + + Returns the shared instance of . + + + + + + This returns a instance which logs nothing. + + + + + + This method ignores the parameter and does nothing. + + + + + + + + Provider for the . + + + + + Returns an instance of . + + + + + + + + + + + Minimalistic logger that does nothing. + + + + + Returns an instance of . + + An instance of . + + + + + + + + This method ignores the parameters and does nothing. + + + + + + + + ILogger extension methods for common scenarios. + + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, "Processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug("Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, "Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace("Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, "Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation("Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, "Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning("Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, "Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError("Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, "Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical("Processing request from {Address}", address) + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats the message and creates a scope. + + The to create the scope in. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + A disposable scope object. Can be null. + + using(logger.BeginScope("Processing request from {Address}", address)) + { + } + + + + + Default implementation of + + + + + Creates a new . + + + + + + + + + + + ILoggerFactory extension methods for common scenarios. + + + + + Creates a new instance using the full name of the given type. + + The factory. + The type. + The that was created. + + + + Creates a new instance using the full name of the given . + + The factory. + The type. + The that was created. + + + + Creates delegates which can be later cached to log messages in a performant way. + + + + + Creates a delegate which can be invoked to create a log scope. + + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Provides information to guide the production of a strongly-typed logging method. + + + The method this attribute is applied to: + - Must be a partial method. + - Must return void. + - Must not be generic. + - Must have an as one of its parameters. + - Must have a as one of its parameters. + - None of the parameters can be generic. + + + + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log event Id. + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + Format string of the log message. + + + + Gets the logging event id for the logging method. + + + + + Gets or sets the logging event name for the logging method. + + + This will equal the method name if not specified. + + + + + Gets the logging level for the logging method. + + + + + Gets the message text for the logging method. + + + + + Gets the flag to skip IsEnabled check for the logging method. + + + + + Delegates to a new instance using the full name of the given type, created by the + provided . + + The type. + + + + Creates a new . + + The factory. + + + + + + + + + + + + + Defines logging severity levels. + + + + + Logs that contain the most detailed messages. These messages may contain sensitive application data. + These messages are disabled by default and should never be enabled in a production environment. + + + + + Logs that are used for interactive investigation during development. These logs should primarily contain + information useful for debugging and have no long-term value. + + + + + Logs that track the general flow of the application. These logs should have long-term value. + + + + + Logs that highlight an abnormal or unexpected event in the application flow, but do not otherwise cause the + application execution to stop. + + + + + Logs that highlight when the current flow of execution is stopped due to a failure. These should indicate a + failure in the current activity, not an application-wide failure. + + + + + Logs that describe an unrecoverable application or system crash, or a catastrophic failure that requires + immediate attention. + + + + + Not used for writing log messages. Specifies that a logging category should not write any messages. + + + + + Formatter to convert the named format items like {NamedformatItem} to format. + + + + + Scope provider that does nothing. + + + + + Returns a cached instance of . + + + + + + + + + + + An empty scope without any logic + + + + + + + + Pretty print a type name. + + The . + true to print a fully qualified name. + true to include generic parameter names. + true to include generic parameters. + Character to use as a delimiter in nested type names + The pretty printed type name. + + + + Get a pinnable reference to the builder. + Does not ensure there is a null char after + This overload is pattern matched in the C# 7.3+ compiler so you can omit + the explicit method call, and write eg "fixed (char* c = builder)" + + + + + Get a pinnable reference to the builder. + + Ensures that the builder has a null char after + + + Returns the underlying storage of the builder. + + + + Returns a span around the contents of the builder. + + Ensures that the builder has a null char after + + + + Resize the internal buffer either by doubling current buffer size or + by adding to + whichever is greater. + + + Number of chars requested beyond current position. + + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + The format string '{0}' does not have the expected number of named parameters. Expected {1} parameter(s) but found {2} parameter(s). + + + diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll new file mode 100644 index 0000000..1c02fc2 Binary files /dev/null and b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll differ diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml new file mode 100644 index 0000000..105e4d8 --- /dev/null +++ b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml @@ -0,0 +1,1350 @@ + + + + Microsoft.Extensions.Logging.Abstractions + + + + + Identifies a logging event. The primary identifier is the "Id" property, with the "Name" property providing a short description of this type of event. + + + + + Implicitly creates an EventId from the given . + + The to convert to an EventId. + + + + Checks if two specified instances have the same value. They are equal if they have the same Id. + + The first . + The second . + if the objects are equal. + + + + Checks if two specified instances have different values. + + The first . + The second . + if the objects are not equal. + + + + Initializes an instance of the struct. + + The numeric identifier for this event. + The name of this event. + + + + Gets the numeric identifier for this event. + + + + + Gets the name of this event. + + + + + + + + Indicates whether the current object is equal to another object of the same type. Two events are equal if they have the same id. + + An object to compare with this object. + if the current object is equal to the other parameter; otherwise, . + + + + + + + + + + LogValues to enable formatting options supported by . + This also enables using {NamedformatItem} in the format string. + + + + + Represents a storage of common scope data. + + + + + Executes callback for each currently active scope objects in order of creation. + All callbacks are guaranteed to be called inline from this method. + + The callback to be executed for every scope object + The state object to be passed into the callback + The type of state to accept. + + + + Adds scope object to the list + + The scope object + The token that removes scope on dispose. + + + + Represents a type used to perform logging. + + Aggregates most logging patterns to a single method. + + + + Writes a log entry. + + Entry will be written on this level. + Id of the event. + The entry to be written. Can be also an object. + The exception related to this entry. + Function to create a message of the and . + The type of the object to be written. + + + + Checks if the given is enabled. + + Level to be checked. + true if enabled. + + + + Begins a logical operation scope. + + The identifier for the scope. + The type of the state to begin scope for. + An that ends the logical operation scope on dispose. + + + + Represents a type used to configure the logging system and create instances of from + the registered s. + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The . + + + + Adds an to the logging system. + + The . + + + + Represents a type that can create instances of . + + + + + Creates a new instance. + + The category name for messages produced by the logger. + The instance of that was created. + + + + A generic interface for logging where the category name is derived from the specified + type name. + Generally used to enable activation of a named from dependency injection. + + The type whose name is used for the logger category name. + + + + An interface for configuring logging providers. + + + + + Gets the where Logging services are configured. + + + + + Represents a that is able to consume external scope information. + + + + + Sets external scope information source for logger provider. + + The provider of scope data. + + + + Options for and its overloads + + + + + Gets or sets the flag to skip IsEnabled check for the logging method. + + + + + Holds the information for a single log entry. + + + + + Initializes an instance of the LogEntry struct. + + The log level. + The category name for the log. + The log event Id. + The state for which log is being written. + The log exception. + The formatter. + + + + Gets the LogLevel + + + + + Gets the log category + + + + + Gets the log EventId + + + + + Gets the TState + + + + + Gets the log exception + + + + + Gets the formatter + + + + + Minimalistic logger that does nothing. + + + + + Returns the shared instance of . + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + An used to create instance of + that logs nothing. + + + + + Creates a new instance. + + + + + Returns the shared instance of . + + + + + + This returns a instance which logs nothing. + + + + + + This method ignores the parameter and does nothing. + + + + + + + + Provider for the . + + + + + Returns an instance of . + + + + + + + + + + + Minimalistic logger that does nothing. + + + + + Returns an instance of . + + An instance of . + + + + + + + + This method ignores the parameters and does nothing. + + + + + + + + ILogger extension methods for common scenarios. + + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(0, "Processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a debug log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogDebug("Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(0, "Processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a trace log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogTrace("Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(0, "Processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an informational log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogInformation("Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(0, "Processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a warning log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogWarning("Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(0, "Processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError(exception, "Error while processing request from {Address}", address) + + + + Formats and writes an error log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogError("Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The event id associated with the log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(0, "Processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + The exception to log. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical(exception, "Error while processing request from {Address}", address) + + + + Formats and writes a critical log message. + + The to write to. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + logger.LogCritical("Processing request from {Address}", address) + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats and writes a log message at the specified log level. + + The to write to. + Entry will be written on this level. + The event id associated with the log. + The exception to log. + Format string of the log message. + An object array that contains zero or more objects to format. + + + + Formats the message and creates a scope. + + The to create the scope in. + Format string of the log message in message template format. Example: "User {User} logged in from {Address}" + An object array that contains zero or more objects to format. + A disposable scope object. Can be null. + + using(logger.BeginScope("Processing request from {Address}", address)) + { + } + + + + + Default implementation of + + + + + Creates a new . + + + + + + + + + + + ILoggerFactory extension methods for common scenarios. + + + + + Creates a new instance using the full name of the given type. + + The factory. + The type. + The that was created. + + + + Creates a new instance using the full name of the given . + + The factory. + The type. + The that was created. + + + + Creates delegates which can be later cached to log messages in a performant way. + + + + + Creates a delegate which can be invoked to create a log scope. + + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked to create a log scope. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The named format string + A delegate which when invoked creates a log scope. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + A delegate which when invoked creates a log message. + + + + Creates a delegate which can be invoked for logging a message. + + The type of the first parameter passed to the named format string. + The type of the second parameter passed to the named format string. + The type of the third parameter passed to the named format string. + The type of the fourth parameter passed to the named format string. + The type of the fifth parameter passed to the named format string. + The type of the sixth parameter passed to the named format string. + The + The event id + The named format string + The + A delegate which when invoked creates a log message. + + + + Provides information to guide the production of a strongly-typed logging method. + + + The method this attribute is applied to: + - Must be a partial method. + - Must return void. + - Must not be generic. + - Must have an as one of its parameters. + - Must have a as one of its parameters. + - None of the parameters can be generic. + + + + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log event Id. + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + Format string of the log message. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + The log level. + + + + Initializes a new instance of the class + which is used to guide the production of a strongly-typed logging method. + + Format string of the log message. + + + + Gets the logging event id for the logging method. + + + + + Gets or sets the logging event name for the logging method. + + + This will equal the method name if not specified. + + + + + Gets the logging level for the logging method. + + + + + Gets the message text for the logging method. + + + + + Gets the flag to skip IsEnabled check for the logging method. + + + + + Delegates to a new instance using the full name of the given type, created by the + provided . + + The type. + + + + Creates a new . + + The factory. + + + + + + + + + + + + + Defines logging severity levels. + + + + + Logs that contain the most detailed messages. These messages may contain sensitive application data. + These messages are disabled by default and should never be enabled in a production environment. + + + + + Logs that are used for interactive investigation during development. These logs should primarily contain + information useful for debugging and have no long-term value. + + + + + Logs that track the general flow of the application. These logs should have long-term value. + + + + + Logs that highlight an abnormal or unexpected event in the application flow, but do not otherwise cause the + application execution to stop. + + + + + Logs that highlight when the current flow of execution is stopped due to a failure. These should indicate a + failure in the current activity, not an application-wide failure. + + + + + Logs that describe an unrecoverable application or system crash, or a catastrophic failure that requires + immediate attention. + + + + + Not used for writing log messages. Specifies that a logging category should not write any messages. + + + + + Formatter to convert the named format items like {NamedformatItem} to format. + + + + + Scope provider that does nothing. + + + + + Returns a cached instance of . + + + + + + + + + + + An empty scope without any logic + + + + + + + + Pretty print a type name. + + The . + true to print a fully qualified name. + true to include generic parameter names. + true to include generic parameters. + Character to use as a delimiter in nested type names + The pretty printed type name. + + + + Get a pinnable reference to the builder. + Does not ensure there is a null char after + This overload is pattern matched in the C# 7.3+ compiler so you can omit + the explicit method call, and write eg "fixed (char* c = builder)" + + + + + Get a pinnable reference to the builder. + + Ensures that the builder has a null char after + + + Returns the underlying storage of the builder. + + + + Returns a span around the contents of the builder. + + Ensures that the builder has a null char after + + + + Resize the internal buffer either by doubling current buffer size or + by adding to + whichever is greater. + + + Number of chars requested beyond current position. + + + + Throws an if is null. + The reference type argument to validate as non-null. + The name of the parameter with which corresponds. + + + + Throws either an or an + if the specified string is or whitespace respectively. + + String to be checked for or whitespace. + The name of the parameter being checked. + The original value of . + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + The format string '{0}' does not have the expected number of named parameters. Expected {1} parameter(s) but found {2} parameter(s). + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + Specifies that an output may be null even if the corresponding type disallows it. + + + Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns. + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + + Gets the return value condition. + + + Specifies that the output will be non-null if the named parameter is non-null. + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + Applied to a method that will never return under any circumstance. + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + Initializes the attribute with the specified parameter value. + + The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to + the associated parameter matches this value. + + + + Gets the condition parameter value. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition. + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + Gets field or property member names. + + + diff --git a/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/useSharedDesignerContext.txt b/packages/Microsoft.Extensions.Logging.Abstractions.8.0.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/Npgsql.8.0.3/.signature.p7s b/packages/Npgsql.8.0.3/.signature.p7s new file mode 100644 index 0000000..040fcb7 Binary files /dev/null and b/packages/Npgsql.8.0.3/.signature.p7s differ diff --git a/packages/Npgsql.8.0.3/Npgsql.8.0.3.nupkg b/packages/Npgsql.8.0.3/Npgsql.8.0.3.nupkg new file mode 100644 index 0000000..f906d58 Binary files /dev/null and b/packages/Npgsql.8.0.3/Npgsql.8.0.3.nupkg differ diff --git a/packages/Npgsql.8.0.3/README.md b/packages/Npgsql.8.0.3/README.md new file mode 100644 index 0000000..8a80f79 --- /dev/null +++ b/packages/Npgsql.8.0.3/README.md @@ -0,0 +1,44 @@ +Npgsql is the open source .NET data provider for PostgreSQL. It allows you to connect and interact with PostgreSQL server using .NET. + +## Quickstart + +Here's a basic code snippet to get you started: + +```csharp +var connString = "Host=myserver;Username=mylogin;Password=mypass;Database=mydatabase"; + +await using var conn = new NpgsqlConnection(connString); +await conn.OpenAsync(); + +// Insert some data +await using (var cmd = new NpgsqlCommand("INSERT INTO data (some_field) VALUES (@p)", conn)) +{ + cmd.Parameters.AddWithValue("p", "Hello world"); + await cmd.ExecuteNonQueryAsync(); +} + +// Retrieve all rows +await using (var cmd = new NpgsqlCommand("SELECT some_field FROM data", conn)) +await using (var reader = await cmd.ExecuteReaderAsync()) +{ +while (await reader.ReadAsync()) + Console.WriteLine(reader.GetString(0)); +} +``` + +## Key features + +* High-performance PostgreSQL driver. Regularly figures in the top contenders on the [TechEmpower Web Framework Benchmarks](https://www.techempower.com/benchmarks/). +* Full support of most PostgreSQL types, including advanced ones such as arrays, enums, ranges, multiranges, composites, JSON, PostGIS and others. +* Highly-efficient bulk import/export API. +* Failover, load balancing and general multi-host support. +* Great integration with Entity Framework Core via [Npgsql.EntityFrameworkCore.PostgreSQL](https://www.nuget.org/packages/Npgsql.EntityFrameworkCore.PostgreSQL). + +For the full documentation, please visit [the Npgsql website](https://www.npgsql.org). + +## Related packages + +* The Entity Framework Core provider that works with this provider is [Npgsql.EntityFrameworkCore.PostgreSQL](https://www.nuget.org/packages/Npgsql.EntityFrameworkCore.PostgreSQL). +* Spatial plugin to work with PostgreSQL PostGIS: [Npgsql.NetTopologySuite](https://www.nuget.org/packages/Npgsql.NetTopologySuite) +* NodaTime plugin to use better date/time types with PostgreSQL: [Npgsql.NodaTime](https://www.nuget.org/packages/Npgsql.NodaTime) +* OpenTelemetry support can be set up with [Npgsql.OpenTelemetry](https://www.nuget.org/packages/Npgsql.OpenTelemetry) \ No newline at end of file diff --git a/packages/Npgsql.8.0.3/lib/net6.0/Npgsql.dll b/packages/Npgsql.8.0.3/lib/net6.0/Npgsql.dll new file mode 100644 index 0000000..5901718 Binary files /dev/null and b/packages/Npgsql.8.0.3/lib/net6.0/Npgsql.dll differ diff --git a/packages/Npgsql.8.0.3/lib/net6.0/Npgsql.xml b/packages/Npgsql.8.0.3/lib/net6.0/Npgsql.xml new file mode 100644 index 0000000..3addeb9 --- /dev/null +++ b/packages/Npgsql.8.0.3/lib/net6.0/Npgsql.xml @@ -0,0 +1,11520 @@ + + + + Npgsql + + + + + Indicates that the specified method requires the ability to generate new code at runtime, + for example through . + + + This allows tools to understand which methods are unsafe to call when compiling ahead of time. + + + + + Initializes a new instance of the class + with the specified message. + + + A message that contains information about the usage of dynamic code. + + + + + Gets a message that contains information about the usage of dynamic code. + + + + + Gets or sets an optional URL that contains more information about the method, + why it requires dynamic code, and what options a consumer has to deal with it. + + + + + Initializes a new instance of the class. + + + + Indicates that an API is experimental and it may change in the future. + + + Initializes a new instance of the class, specifying the ID that the compiler will use when reporting a use of the API the attribute applies to. + The ID that the compiler will use when reporting a use of the API the attribute applies to. + + + Gets the ID that the compiler will use when reporting a use of the API the attribute applies to. + The unique diagnostic ID. + + + Gets or sets the URL for corresponding documentation. + The API accepts a format string instead of an actual URL, creating a generic URL that includes the diagnostic ID. + The format string that represents a URL to corresponding documentation. + + + + Exception thrown when the program executes an instruction that was thought to be unreachable. + + + + + Initializes a new instance of the class with the default error message. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Note that this message doesn't actually contain the data, but only the length. Data is processed + directly from the connector's buffer. + + + + + DataRow is special in that it does not parse the actual contents of the backend message, + because in sequential mode the message will be traversed and processed sequentially by + . + + + + + Error and notice message field codes + + + + + A RowDescription message sent from the backend. + + + See https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + A descriptive record on a single field received from PostgreSQL. + See RowDescription in https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + The field name. + + + + + The object ID of the field's data type. + + + + + The data type size (see pg_type.typlen). Note that negative values denote variable-width types. + + + + + The type modifier (see pg_attribute.atttypmod). The meaning of the modifier is type-specific. + + + + + If the field can be identified as a column of a specific table, the object ID of the table; otherwise zero. + + + + + If the field can be identified as a column of a specific table, the attribute number of the column; otherwise zero. + + + + + The format code being used for the field. + Currently will be text or binary. + In a RowDescription returned from the statement variant of Describe, the format code is not yet known and will always be zero. + + + + + Returns a string that represents the current object. + + + + + Base class for all classes which represent a message sent by the PostgreSQL backend. + + + + + Specifies the type of SQL statement, e.g. SELECT + + + + Streaming + + + Entire value should be buffered + + + Fixed size value should be buffered + + + Custom requirements + + + + CompositeFieldInfo constructor. + + Name of the field. + Type info for reading/writing. + The nominal field type, this may differ from the typeInfo.PgTypeId when the field is a domain type. + + + + Create temporary storage for all values that come before the constructor parameters can be saturated. + + + + + A reference to the type that houses the static method points to. + The continuation + + + A reference to the type that houses the static method points to. + The continuation + + + Note that for BIT(1), this resolver will return a bool by default, to align with SqlClient + (see discussion https://github.com/npgsql/npgsql/pull/362#issuecomment-59622101). + + + A converter to map strongly typed apis onto boxed converter results to produce a strongly typed converter over T. + + + Special value converter to be able to use struct converters as System.Nullable converters, it delegates all behavior to the effective converter. + + + Big endian array of numeric digits + + + + + + + If the destination ends up being too small the builder allocates instead + + + + + + + + + Whether the input consists of any non zero bits + + + Adapted from BigInteger, to allow us to operate directly on stack allocated bits + + + + Hacky temporary measure used by EFCore.PG to extract user-configured enum mappings. Accessed via reflection only. + + + + + A factory which get generate instances of , which describe a database + and the types it contains. When first connecting to a database, Npgsql will attempt to load information + about it via this factory. + + + + + Given a connection, loads all necessary information about the connected database, e.g. its types. + A factory should only handle the exact database type it was meant for, and return null otherwise. + + + An object describing the database to which is connected, or null if the + database isn't of the correct type and isn't handled by this factory. + + + + + An Npgsql resolver for type info. Used by Npgsql to read and write values to PostgreSQL. + + + + + Resolve a type info for a given type and data type name, at least one value will be non-null. + + The clr type being requested. + The postgres type being requested. + Used for configuration state and Npgsql type info or PostgreSQL type catalog lookups. + A result, or null if there was no match. + + + + Represents a connection to a PostgreSQL backend. Unlike NpgsqlConnection objects, which are + exposed to users, connectors are internal to Npgsql and are recycled by the connection pool. + + + + + The physical connection socket to the backend. + + + + + The physical connection stream to the backend, without anything on top. + + + + + The physical connection stream to the backend, layered with an SSL/TLS stream if in secure mode. + + + + + The parsed connection string. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + Buffer used for reading data. + + + + + If we read a data row that's bigger than , we allocate an oversize buffer. + The original (smaller) buffer is stored here, and restored when the connection is reset. + + + + + Buffer used for writing data. + + + + + The secret key of the backend for this connector, used for query cancellation. + + + + + The process ID of the backend for this connector. + + + + + The user name that has been inferred when the connector was opened + + + + + A unique ID identifying this connector, used for logging. Currently mapped to BackendProcessId + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + The current transaction status for this connector. + + + + + A transaction object for this connector. Since only one transaction can be in progress at any given time, + this instance is recycled. To check whether a transaction is currently in progress on this connector, + see . + + + + + The NpgsqlConnection that (currently) owns this connector. Null if the connector isn't + owned (i.e. idle in the pool) + + + + + The number of messages that were prepended to the current message chain, but not yet sent. + Note that this only tracks messages which produce a ReadyForQuery message + + + + + A ManualResetEventSlim used to make sure a cancellation request doesn't run + while we're reading responses for the prepended query + as we can't gracefully handle their cancellation. + + + + + If the connector is currently in COPY mode, holds a reference to the importer/exporter object. + Otherwise null. + + + + + Holds all run-time parameters received from the backend (via ParameterStatus messages) + + + + + Holds all run-time parameters in raw, binary format for efficient handling without allocations. + + + + + If this connector was broken, this contains the exception that caused the break. + + + + + + Used by the pool to indicate that I/O is currently in progress on this connector, so that another write + isn't started concurrently. Note that since we have only one write loop, this is only ever usedto + protect against an over-capacity writes into a connector that's currently *asynchronously* writing. + + + It is guaranteed that the currently-executing + Specifically, reading may occur - and the connector may even be returned to the pool - before this is + released. + + + + + + + + + + + + A lock that's taken while a cancellation is being delivered; new queries are blocked until the + cancellation is delivered. This reduces the chance that a cancellation meant for a previous + command will accidentally cancel a later one, see #615. + + + + + A lock that's taken to make sure no other concurrent operation is running. + Break takes it to set the state of the connector. + Anyone else should immediately check the state and exit + if the connector is closed. + + + + + A lock that's used to wait for the Cleanup to complete while breaking the connection. + + + + + The command currently being executed by the connector, null otherwise. + Used only for concurrent use error reporting purposes. + + + + + The connector source (e.g. pool) from where this connector came, and to which it will be returned. + Note that in multi-host scenarios, this references the host-specific rather than the + . + + + + + Contains the UTC timestamp when this connector was opened, used to implement + . + + + + + The minimum timeout that can be set on internal commands such as COMMIT, ROLLBACK. + + Precision is seconds + + + + Gets the current state of the connector + + + + + Returns whether the connector is open, regardless of any task it is currently performing + + + + + Opens the physical connection to the server. + + Usually called by the RequestConnector + Method of the connection pool manager. + + + + Prepends a message to be sent at the beginning of the next message chain. + + + + + Reads backend messages and discards them, stopping only after a message of the given type has + been seen. Only a sync I/O version of this method exists - in async flows we inline the loop + rather than calling an additional async method, in order to avoid the overhead. + + + + + Handles a new transaction indicator received on a ReadyForQuery message + + + + + Returns whether SSL is being used for the connection + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Creates another connector and sends a cancel request through it for this connector. This method never throws, but returns + whether the cancellation attempt failed. + + + + if the cancellation request was successfully delivered, or if it was skipped because a previous + request was already sent. if the cancellation request could not be delivered because of an exception + (the method logs internally). + + + This does not indicate whether the cancellation attempt was successful on the PostgreSQL side - only if the request was + delivered. + + + + + + Starts a new cancellable operation within an ongoing user action. This should only be used if a single user + action spans several different actions which each has its own cancellation tokens. For example, a command + execution is a single user action, but spans ExecuteReaderQuery, NextResult, Read and so forth. + + + Only one level of nested operations is supported. It is an error to call this method if it has previously + been called, and the returned was not disposed. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the + cancellation, and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or + a timeout occurs, followed by a client-side socket cancellation once + has elapsed. If , + PostgreSQL cancellation will be skipped and client-socket cancellation will occur immediately. + + + + + Closes ongoing operations, i.e. an open reader exists or a COPY operation still in progress, as + part of a connection close. + + + + + Called when an unexpected message has been received during an action. Breaks the + connector and returns the appropriate message. + + + + + Called when a connector becomes completely unusable, e.g. when an unexpected I/O exception is raised or when + we lose protocol sync. + Note that fatal errors during the Open phase do *not* pass through here. + + The exception that caused the break. + The exception given in for chaining calls. + + + + Closes the socket and cleans up client-side resources associated with this connector. + + + This method doesn't actually perform any meaningful I/O, and therefore is sync-only. + + + + + Called when a pooled connection is closed, and its connector is returned to the pool. + Resets the connector back to its initial state, releasing server-side sources + (e.g. prepared statements), resetting parameters to their defaults, and resetting client-side + state + + + + + The connector may have allocated an oversize read buffer, to hold big rows in non-sequential reading. + This switches us back to the original one and returns the buffer to . + + + + + Starts a user action. This makes sure that another action isn't already in progress, handles synchronization with keepalive, + and sets up cancellation. + + The new state to be set when entering this user action. + + The that is starting execution - if an is + thrown, it will reference this. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the cancellation, + and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or a timeout + occurs, followed by a client-side socket cancellation once has + elapsed. If , PostgreSQL cancellation will be skipped and client-socket cancellation will occur + immediately. + + + + + An IDisposable wrapper around . + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Creates and returns a object associated with the . + + The text of the query. + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + This Stream is placed between NegotiateStream and the socket's NetworkStream (or SSLStream). It intercepts + traffic and performs the following operations: + * Outgoing messages are framed in PostgreSQL's PasswordMessage, and incoming are stripped of it. + * NegotiateStream frames payloads with a 5-byte header, which PostgreSQL doesn't understand. This header is + stripped from outgoing messages and added to incoming ones. + + + See https://referencesource.microsoft.com/#System/net/System/Net/_StreamFramer.cs,16417e735f0e9530,references + + + + + Expresses the exact state of a connector. + + + + + The connector has either not yet been opened or has been closed. + + + + + The connector is currently connecting to a PostgreSQL server. + + + + + The connector is connected and may be used to send a new query. + + + + + The connector is waiting for a response to a query which has been sent to the server. + + + + + The connector is currently fetching and processing query results. + + + + + The connector is currently waiting for asynchronous notifications to arrive. + + + + + The connection was broken because an unexpected error occurred which left it in an unknown state. + This state isn't implemented yet. + + + + + The connector is engaged in a COPY operation. + + + + + The connector is engaged in streaming replication. + + + + + Currently not in a transaction block + + + + + Currently in a transaction block + + + + + Currently in a failed transaction block (queries will be rejected until block is ended) + + + + + A new transaction has been requested but not yet transmitted to the backend. It will be transmitted + prepended to the next query. + This is a client-side state option only, and is never transmitted from the backend. + + + + + Specifies how to load/parse DataRow messages as they're received from the backend. + + + + + Load DataRows in non-sequential mode + + + + + Load DataRows in sequential mode + + + + + Skip DataRow messages altogether + + + + + Base class for implementations which provide information about PostgreSQL and PostgreSQL-like databases + (e.g. type definitions, capabilities...). + + + + + The hostname of IP address of the database. + + + + + The TCP port of the database. + + + + + The database name. + + + + + The version of the PostgreSQL database we're connected to, as reported in the "server_version" parameter. + Exposed via . + + + + + The PostgreSQL version string as returned by the server_version option. Populated during loading. + + + + + Whether the backend supports range types. + + + + + Whether the backend supports multirange types. + + + + + Whether the backend supports enum types. + + + + + Whether the backend supports the CLOSE ALL statement. + + + + + Whether the backend supports advisory locks. + + + + + Whether the backend supports the DISCARD SEQUENCES statement. + + + + + Whether the backend supports the UNLISTEN statement. + + + + + Whether the backend supports the DISCARD TEMP statement. + + + + + Whether the backend supports the DISCARD statement. + + + + + Reports whether the backend uses the newer integer timestamp representation. + + + + + Whether the database supports transactions. + + + + + Indexes backend types by their type OID. + + + + + Indexes backend types by their PostgreSQL internal name, including namespace (e.g. pg_catalog.int4). + Only used for enums and composites. + + + + + Indexes backend types by their PostgreSQL name, not including namespace. + If more than one type exists with the same name (i.e. in different namespaces) this + table will contain an entry with a null value. + Only used for enums and composites. + + + + + Initializes the instance of . + + + + + Initializes the instance of . + + + + + Provides all PostgreSQL types detected in this database. + + + + + + Parses a PostgreSQL server version (e.g. 10.1, 9.6.3) and returns a CLR Version. + + + + + Registers a new database info factory, which is used to load information about databases. + + + + + A buffer used by Npgsql to read data from the socket efficiently. + Provides methods which decode different values types and tracks the current position. + + + + + Timeout for sync and async reads + + + + + The total byte length of the buffer. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + The minimum buffer size possible. + + + + + Ensures that bytes are available in the buffer, and if + not, reads from the socket until enough is available. + + + + + Does not perform any I/O - assuming that the bytes to be skipped are in the memory buffer. + + + + + Skip a given number of bytes. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. If any character could not be decoded, a question + mark character is returned instead of throwing an exception. + + + + + Seeks the first null terminator (\0) and returns the string up to it. Reads additional data from the network if a null + terminator isn't found in the buffered data. + + + + Does not throw ODE. + + + + A buffer used by Npgsql to write data to the socket efficiently. + Provides methods which encode different values types and tracks the current position. + + + + + Timeout for sync and async writes + + + + + The total byte length of the buffer. + + + + + The minimum buffer size possible. + + + + + Returns all contents currently written to the buffer (but not flushed). + Useful for pre-generating messages. + + + + + Whether this converter can handle the given format and with which buffer requirements. + + The data format. + Returns the buffer requirements. + Returns true if the given data format is supported. + The buffer requirements should not cover database NULL reads or writes, these are handled by the caller. + + + Never DbNull (struct types) + + + DbNull when *user code* + + + DbNull when value is null + + + DbNull when value is null or DBNull + + + + Gets the appropriate converter solely based on PgTypeId. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to read with based on the given field info. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to write with based on the given value. + + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are + cached once used. Array or other collection converters depend on this to cache their own converter - which wraps the element + converter - with the cache key being the element converter reference. + + + + ReadBytes without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + ReadBytesAsync without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + + + + + The stream length, if any + + + + Used by GetSchema to be able to attempt to resolve all type catalog types without exceptions. + + + + Whether options should return a portable identifier (data type name) to prevent any generated id (oid) confusion across backends, this comes with a perf penalty. + + + A reference to the type that houses the static method points to. + The continuation + + + Throws if the instance is a PgResolverTypeInfo. + + + When result is null, the value was interpreted to be a SQL NULL. + + + When result is null or DBNull, the value was interpreted to be a SQL NULL. + + + Whether Converter.TypeToConvert matches PgTypeInfo.Type, if it doesn't object apis should be used. + + + + Gets a that can be used to write to the underlying buffer. + + Blocking flushes during writes that were expected to be non-blocking and vice versa cause an exception to be thrown unless allowMixedIO is set to true, false by default. + The stream. + + + + Represents the fully-qualified name of a PostgreSQL type. + + + + + The maximum length of names in an unmodified PostgreSQL installation. + + + We need to respect this to get to valid names when deriving them (for multirange/arrays etc). + This does not include the namespace. + + + + + Well-known PostgreSQL data type names. + + + + Base field type shared between tables and composites. + + + + A discriminated union of and . + + + + + + + + + + When this flag is true, and both type and pgTypeId are non null, a default info for the pgTypeId can be returned if an exact match + can't be found. + + + + + + + + + + + + Signals whether a resolver based TypeInfo can keep its PgTypeId undecided or whether it should follow mapping.DataTypeName. + + + + Match when the clr type and datatype name both match. + It's also the only requirement that participates in clr type fallback matching. + + + Match when the datatype name or CLR type matches while the other also matches or is absent. + + + Match when the datatype name matches and the clr type also matches or is absent. + + + A factory for well-known PgConverters. + + + Returns the first default converter or the first converter that matches both type and dataTypeName. + If just a type was passed and no default was found we return the first converter with a type match. + + + Returns whether type matches any of the types we register pg arrays as. + + + + Launches MIT Kerberos klist and parses out the default principal from it. + Caches the result. + + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A component which translates a CLR name (e.g. SomeClass) into a database name (e.g. some_class) + according to some scheme. + Used for mapping enum and composite types. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which preserves CLR names (e.g. SomeClass) when mapping names to the database. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which converts standard CLR names (e.g. SomeClass) to snake-case database + names (some_class) + + + + + Creates a new . + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Creates a new . + + + Uses the legacy naming convention if , otherwise it uses the new naming convention. + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + Converts a string to its snake_case equivalent. + + The value to convert. + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Controls whether to place error barriers between all batch commands within this batch. Default to . + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Enabling error barriers ensures that errors do not affect other commands in the batch. + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message between each command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + To control error barriers on a command-by-command basis, see . + + + + + + Marks all of the batch's result columns as either known or unknown. + Unknown results column are requested them from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Initializes a new . + + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of a object. + + An object. + + + + Returns whether the method is implemented. + + + + + Appends an error barrier after this batch command. Defaults to the value of on the + batch. + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Appending an error barrier ensures that errors from this command (or previous ones) won't cause later commands to be skipped, + and that errors from later commands won't cause this command (or previous ones) to be rolled back). + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message after this command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + Controlling error barriers on a command-by-command basis is an advanced feature, consider enabling error barriers for the entire + batch via . + + + + + + The number of rows affected or retrieved. + + + See the command tag in the CommandComplete message for the meaning of this value for each , + https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + + + + Specifies the type of query, e.g. SELECT. + + + + + For an INSERT, the object ID of the inserted row if is 1 and + the target table has OIDs; otherwise 0. + + + + + The SQL as it will be sent to PostgreSQL, after any rewriting performed by Npgsql (e.g. named to positional parameter + placeholders). + + + + + The list of parameters, ordered positionally, as it will be sent to PostgreSQL. + + + If the user provided positional parameters, this references the (in batching mode) or the list + backing (in non-batching) mode. If the user provided named parameters, this is a + separate list containing the re-ordered parameters. + + + + + The RowDescription message for this query. If null, the query does not return rows (e.g. INSERT) + + + + + If this statement has been automatically prepared, references the . + Null otherwise. + + + + + Holds the server-side (prepared) ASCII statement name. Empty string for non-prepared statements. + + + + + Whether this statement has already been prepared (including automatic preparation). + + + + + Returns a prepared statement for this statement (including automatic preparation). + + + + + Initializes a new . + + + + + Initializes a new . + + The text of the . + + + + Returns the . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides an API for a binary COPY TO operation, a high-performance data export mechanism from + a PostgreSQL table. Initiated by + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be read. + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be read. + The value of the column + + + + Returns whether the current column is null. + + + + + Skips the current column without interpreting its value. + + + + + Skips the current column without interpreting its value. + + + + + Cancels an ongoing export. + + + + + Async cancels an ongoing export. + + + + + Completes that binary export and sets the connection back to idle state + + + + + Async completes that binary export and sets the connection back to idle state + + + + + + Provides an API for a binary COPY FROM operation, a high-performance data import mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The number of columns in the current (not-yet-written) row. + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Writes a single column in the current row. + + The value to be written + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row. + + The value to be written + + An optional token to cancel the asynchronous operation. The default value is . + + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single null column value. + + + + + Writes a single null column value. + + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + An array of column values to be written as a single row + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + + An optional token to cancel the asynchronous operation. The default value is . + + An array of column values to be written as a single row + + + + Completes the import operation. The writer is unusable after this operation. + + + + + Completes the import operation. The writer is unusable after this operation. + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + Represents a SQL statement or function (stored procedure) to execute + against a PostgreSQL database. This class cannot be inherited. + + + + + If this command is (explicitly) prepared, references the connector on which the preparation happened. + Used to detect when the connector was changed (i.e. connection open/close), meaning that the command + is no longer prepared. + + + + + Whether this is wrapped by an . + + + + + Returns details about each statement that this command has executed. + Is only populated when an Execute* method is called. + + + + + Whether this command is cached by and returned by . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the text of the query. + + The text of the query. + + + + Initializes a new instance of the class with the text of the query and a + . + + The text of the query. + A that represents the connection to a PostgreSQL server. + + + + Initializes a new instance of the class with the text of the query, a + , and the . + + The text of the query. + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + Used when this instance is wrapped inside an . + + + + + Used when this instance is wrapped inside an . + + + + + Gets or sets the SQL statement or function (stored procedure) to execute at the data source. + + The SQL statement or function (stored procedure) to execute. The default is an empty string. + + + + Gets or sets the wait time (in seconds) before terminating the attempt to execute a command and generating an error. + + The time (in seconds) to wait for the command to execute. The default value is 30 seconds. + + + + Gets or sets a value indicating how the property is to be interpreted. + + + One of the values. The default is . + + + + + DB connection. + + + + + Gets or sets the used by this instance of the . + + The connection to a data source. The default value is . + + + + Design time visible. + + + + + Gets or sets how command results are applied to the DataRow when used by the + DbDataAdapter.Update(DataSet) method. + + One of the values. + + + + Returns whether this query will execute as a prepared (compiled) query. + + + + + Marks all of the query's result columns as either known or unknown. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Marks the query's result columns as known or unknown, on a column-by-column basis. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + If the query includes several queries (e.g. SELECT 1; SELECT 2), this will only apply to the first + one. The rest of the queries will be fetched and parsed as usual. + + The array size must correspond exactly to the number of result columns the query returns, or an + error will be raised. + + + + + The current state of the command + + + + + Creates a new instance of an object. + + A object. + + + + Creates a new instance of a object. + + An object. + + + + DB parameter collection. + + + + + Gets the . + + The parameters of the SQL statement or function (stored procedure). The default is an empty collection. + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Executes a SQL statement against the connection and returns the number of rows affected. + + The number of rows affected if known; -1 otherwise. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the number of rows affected if known; -1 otherwise. + + + + Executes the query, and returns the first column of the first row + in the result set returned by the query. Extra columns or rows are ignored. + + The first column of the first row in the result set, + or a null reference if the result set is empty. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the first column of the + first row in the result set, or a null reference if the result set is empty. + + + + Executes the command text against the connection. + + A task representing the operation. + + + + Executes the command text against the connection. + + An instance of . + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + A task representing the operation. + + + + An asynchronous version of , which executes + the against the + and returns a . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + An asynchronous version of , + which executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + DB transaction. + + + + + This property is ignored by Npgsql. PostgreSQL only supports a single transaction at a given time on + a given connection, and all commands implicitly run inside the current transaction started via + + + + + + Attempts to cancel the execution of an . + + As per the specs, no exception will be thrown by this method in case of failure. + + + + + + + Fixes up the text/binary flag on result columns. + Since Prepare() describes a statement rather than a portal, the resulting RowDescription + will have text format on all result columns. Fix that up. + + + Note that UnknownResultTypeList only applies to the first query, while AllResultTypesAreUnknown applies + to all of them. + + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + This event is unsupported by Npgsql. Use instead. + + + + + This class creates database commands for automatic insert, update and delete operations. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The adapter. + + + + Gets or sets the beginning character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The beginning character or characters to use. The default is an empty string. + + + + + + + + Gets or sets the ending character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The ending character or characters to use. The default is an empty string. + + + + + + + + + This method is responsible to derive the command parameter list with values obtained from function definition. + It clears the Parameters collection of command. Also, if there is any parameter type which is not supported by Npgsql, an InvalidOperationException will be thrown. + Parameters name will be parameter1, parameter2, ... for CommandType.StoredProcedure and named after the placeholder for CommandType.Text + + NpgsqlCommand whose function parameters will be obtained. + + + + Gets the automatically generated object required + to perform insertions at the data source. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated object required to perform insertions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform updates at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform updates. + + + + + Gets the automatically generated object required to perform updates + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform updates. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform deletions at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform deletions. + + + + + Gets the automatically generated object required to perform deletions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform deletions. + + + + + Applies the parameter information. + + The parameter. + The row. + Type of the statement. + If set to [where clause]. + + + + Returns the name of the specified parameter in the format of @p#. + + The number to be included as part of the parameter's name.. + + The name of the parameter with the specified number appended as part of the parameter name. + + + + + Returns the full parameter name, given the partial parameter name. + + The partial name of the parameter. + + The full parameter name corresponding to the partial parameter name requested. + + + + + Returns the placeholder for the parameter in the associated SQL statement. + + The number to be included as part of the parameter's name. + + The name of the parameter with the specified number appended. + + + + + Registers the to handle the event for a . + + The to be used for the update. + + + + Adds an event handler for the event. + + The sender + A instance containing information about the event. + + + + Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier, including properly escaping any embedded quotes in the identifier. + + The original unquoted identifier. + + The quoted version of the identifier. Embedded quotes within the identifier are properly escaped. + + + + + Unquoted identifier parameter cannot be null + + + + Given a quoted identifier, returns the correct unquoted form of that identifier, including properly un-escaping any embedded quotes in the identifier. + + The identifier that will have its embedded quotes removed. + + The unquoted identifier, with embedded quotes properly un-escaped. + + + + + Quoted identifier parameter cannot be null + + + + This class represents a connection to a PostgreSQL server. + + + + + The connection string, without the password after open (unless Persist Security Info=true) + + + + + The original connection string provided by the user, including the password. + + + + + The physical connection to the database. This is when the connection is closed, + and also when it is open in multiplexing mode and unbound (e.g. not in a transaction). + + + + + The parsed connection string. Set only after the connection is opened. + + + + + Flag used to make sure we never double-close a connection, returning it twice to the pool. + + + + + The global type mapper, which contains defaults used by all new connections. + Modify mappings on this mapper to affect your entire application. + + + + + Connection-level type mapping is no longer supported. See the 7.0 release notes for configuring type mapping on NpgsqlDataSource. + + + + + The default TCP/IP port for PostgreSQL. + + + + + Maximum value for connection timeout. + + + + + Tracks when this connection was bound to a physical connector (e.g. at open-time, when a transaction + was started...). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Opens a database connection with the property settings specified by the . + + + + + This is the asynchronous version of . + + + Do not invoke other methods and properties of the object until the returned Task is complete. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + The connection string that includes the server name, + the database name, and other parameters needed to establish + the initial connection. The default value is an empty string. + + + + + Gets or sets the delegate used to generate a password for new database connections. + + +

+ This delegate is executed when a new database connection is opened that requires a password. +

+

+ The and connection + string properties have precedence over this delegate: it will not be executed if a password is specified, or if the specified or + default Passfile contains a valid entry. +

+

+ Due to connection pooling this delegate is only executed when a new physical connection is opened, not when reusing a connection + that was previously opened from the pool. +

+
+
+ + + Backend server host name. + + + + + Backend server port. + + + + + Gets the time (in seconds) to wait while trying to establish a connection + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a connection to open. The default value is 15 seconds. + + + + Gets the time (in seconds) to wait while trying to execute a command + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a command to complete. The default value is 30 seconds. + + + + Gets the name of the current database or the database to be used after a connection is opened. + + The name of the current database or the name of the database to be + used after a connection is opened. The default value is the empty string. + + + + Gets the string identifying the database server (host and port) + + + The name of the database server (host and port). If the connection uses a Unix-domain socket, + the path to that socket is returned. The default value is the empty string. + + + + + User name. + + + + + Gets the current state of the connection. + + A bitwise combination of the values. The default is Closed. + + + + Gets whether the current state of the connection is Open or Closed + + ConnectionState.Open, ConnectionState.Closed or ConnectionState.Connecting + + + + A cached command handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + Creates and returns a + object associated with the . + + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + A cached batch handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + + + + + + + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Begins a database transaction. + + A object representing the new transaction. + + Nested transactions are not supported. + Transactions created by this method will have the isolation level. + + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Asynchronously begins a database transaction. + + The isolation level under which the transaction should run. + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose property is an object representing the new transaction. + + Nested transactions are not supported. + + + + + Asynchronously begins a database transaction. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose Result property is an object representing the new transaction. + + Nested transactions are not supported. + Transactions created by this method will have the isolation level. + + + + + Asynchronously begins a database transaction. + + The isolation level under which the transaction should run. + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose property is an object representing the new transaction. + + Nested transactions are not supported. + + + + + Enlist transaction. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases all resources used by the . + + when called from ; + when being called from the finalizer. + + + + Releases all resources used by the . + + + + + Fires when PostgreSQL notices are received from PostgreSQL. + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + Note that notices are very different from notifications (see the event). + + + + + Fires when PostgreSQL notifications are received from PostgreSQL. + + + PostgreSQL notifications are sent when your connection has registered for notifications on a specific channel via the + LISTEN command. NOTIFY can be used to generate such notifications, allowing for an inter-connection communication channel. + + Note that notifications are very different from notices (see the event). + + + + + Returns whether SSL is being used for the connection. + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Selects the local Secure Sockets Layer (SSL) certificate used for authentication. + + + See + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + + + Cannot be used in conjunction with , and + . + + + See . + + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Reports whether the backend uses the newer integer timestamp representation. + Note that the old floating point representation is not supported. + Meant for use by type plugins (e.g. NodaTime) + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Holds all PostgreSQL parameters received for this connection. Is updated if the values change + (e.g. as a result of a SET command). + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds, passed to . + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value is passed to . + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds. + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value as + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Checks whether the connection is currently bound to a connector, and if so, returns it via + . + + + + + Binds this connection to a physical connector. This happens when opening a non-multiplexing connection, + or when starting a transaction on a multiplexed connection. + + + + + Ends binding scope to the physical connection and returns it to the pool. Only useful with multiplexing on. + + + After this method is called, under no circumstances the physical connection (connector) should ever be used if multiplexing is on. + See #3249. + + + + + Returns the supported collections + + + + + Returns the schema collection specified by the collection name. + + The collection name. + The collection specified. + + + + Returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + The collection specified. + + + + Asynchronously returns the supported collections. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name. + + The collection name. + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Creates a closed connection with the connection string and authentication details of this message. + + + + + Clones this connection, replacing its connection string with the given one. + This allows creating a new connection with the same security information + (password, SSL callbacks) while changing other connection parameters (e.g. + database or pooling) + + + + + This method changes the current database by disconnecting from the actual + database and connecting to the specified. + + The name of the database to use in place of the current database. + + + + DB provider factory. + + + + + Clears the connection pool. All idle physical connections in the pool of the given connection are + immediately closed, and any busy connections which were opened before was called + will be closed when returned to the pool. + + + + + Clear all connection pools. All idle physical connections in all pools are immediately closed, and any busy + connections which were opened before was called will be closed when returned + to their pool. + + + + + Unprepares all prepared statements on this connection. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + This event is unsupported by Npgsql. Use instead. + + + + + The connection is currently not bound to a connector. + + + + + The connection is bound to its connector for the scope of the entire connection + (i.e. non-multiplexed connection). + + + + + The connection is bound to its connector for the scope of a transaction. + + + + + The connection is bound to its connector for the scope of a COPY operation. + + + + + The connection is bound to its connector for the scope of a single reader. + + + + + The connection is bound to its connector for an unspecified, temporary scope; the code that initiated + the binding is also responsible to unbind it. + + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notice information (e.g. message, severity...). + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notification payload. + + + + Represents a method that allows the application to provide a certificate collection to be used for SSL client authentication + + + A to be filled with one or more client + certificates. + + + + + Represents a method that allows the application to provide a password at connection time in code rather than configuration + + Hostname + Port + Database Name + User + A valid password for connecting to the database + + + + Provides a simple way to create and manage the contents of connection strings used by + the class. + + + + + Cached DataSource value to reduce allocations on NpgsqlConnection.DataSource.get + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class. + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class, optionally using ODBC rules for quoting values. + + true to use {} to delimit fields; false to use quotation marks. + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class and sets its . + + + + + GeneratedAction and GeneratedActions exist to be able to produce a streamlined binary footprint for NativeAOT. + An idiomatic approach where each action has its own method would double the binary size of NpgsqlConnectionStringBuilder. + + + + + Gets or sets the value associated with the specified key. + + The key of the item to get or set. + The value associated with the specified key. + + + + Adds an item to the . + + The key-value pair to be added. + + + + Removes the entry with the specified key from the DbConnectionStringBuilder instance. + + The key of the key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Removes the entry from the DbConnectionStringBuilder instance. + + The key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Clears the contents of the instance. + + + + + Determines whether the contains a specific key. + + The key to locate in the . + true if the contains an entry with the specified key; otherwise false. + + + + Determines whether the contains a specific key-value pair. + + The item to locate in the . + true if the contains the entry; otherwise false. + + + + Retrieves a value corresponding to the supplied key from this . + + The key of the item to retrieve. + The value corresponding to the key. + true if keyword was found within the connection string, false otherwise. + + + + The hostname or IP address of the PostgreSQL server to connect to. + + + + + The TCP/IP port of the PostgreSQL server. + + + + + The PostgreSQL database to connect to. + + + + + The username to connect with. + + + + + The password to connect with. + + + + + Path to a PostgreSQL password file (PGPASSFILE), from which the password would be taken. + + + + + The optional application name parameter to be sent to the backend during connection initiation. + + + + + Whether to enlist in an ambient TransactionScope. + + + + + Gets or sets the schema search path. + + + + + Gets or sets the client_encoding parameter. + + + + + Gets or sets the .NET encoding that will be used to encode/decode PostgreSQL string data. + + + + + Gets or sets the PostgreSQL session timezone, in Olson/IANA database format. + + + + + Controls whether SSL is required, disabled or preferred, depending on server support. + + + + + Location of a client certificate to be sent to the server. + + + + + Location of a client key for a client certificate to be sent to the server. + + + + + Password for a key for a client certificate. + + + + + Location of a CA certificate used to validate the server certificate. + + + + + Whether to check the certificate revocation list during authentication. + False by default. + + + + + The Kerberos service name to be used for authentication. + + + + + The Kerberos realm to be used for authentication. + + + + + Gets or sets a Boolean value that indicates if security-sensitive information, such as the password, is not returned as part of the connection if the connection is open or has ever been in an open state. + + + + + When enabled, parameter values are logged when commands are executed. Defaults to false. + + + + + When enabled, PostgreSQL error details are included on and + . These can contain sensitive data. + + + + + Controls whether channel binding is required, disabled or preferred, depending on server support. + + + + + Whether connection pooling should be used. + + + + + The minimum connection pool size. + + + + + The maximum connection pool size. + + + + + The time to wait before closing idle connections in the pool if the count + of all connections exceeds MinPoolSize. + + The time (in seconds) to wait. The default value is 300. + + + + How many seconds the pool waits before attempting to prune idle connections that are beyond + idle lifetime (. + + The interval (in seconds). The default value is 10. + + + + The total maximum lifetime of connections (in seconds). Connections which have exceeded this value will be + destroyed instead of returned from the pool. This is useful in clustered configurations to force load + balancing between a running server and a server just brought online. + + The time (in seconds) to wait, or 0 to to make connections last indefinitely (the default). + + + + The time to wait (in seconds) while trying to establish a connection before terminating the attempt and generating an error. + Defaults to 15 seconds. + + + + + The time to wait (in seconds) while trying to execute a command before terminating the attempt and generating an error. + Defaults to 30 seconds. + + + + + The time to wait (in milliseconds) while trying to read a response for a cancellation request for a timed out or cancelled query, before terminating the attempt and generating an error. + Zero for infinity, -1 to skip the wait. + Defaults to 2000 milliseconds. + + + + + Determines the preferred PostgreSQL target server type. + + + + + Enables balancing between multiple hosts by round-robin. + + + + + Controls for how long the host's cached state will be considered as valid. + + + + + The number of seconds of connection inactivity before Npgsql sends a keepalive query. + Set to 0 (the default) to disable. + + + + + Whether to use TCP keepalive with system defaults if overrides isn't specified. + + + + + The number of seconds of connection inactivity before a TCP keepalive query is sent. + Use of this option is discouraged, use instead if possible. + Set to 0 (the default) to disable. + + + + + The interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received. + Defaults to the value of . must be non-zero as well. + + + + + Determines the size of the internal buffer Npgsql uses when reading. Increasing may improve performance if transferring large values from the database. + + + + + Determines the size of the internal buffer Npgsql uses when writing. Increasing may improve performance if transferring large values to the database. + + + + + Determines the size of socket read buffer. + + + + + Determines the size of socket send buffer. + + + + + The maximum number SQL statements that can be automatically prepared at any given point. + Beyond this number the least-recently-used statement will be recycled. + Zero (the default) disables automatic preparation. + + + + + The minimum number of usages an SQL statement is used before it's automatically prepared. + Defaults to 5. + + + + + If set to true, a pool connection's state won't be reset when it is closed (improves performance). + Do not specify this unless you know what you're doing. + + + + + Load table composite type definitions, and not just free-standing composite types. + + + + + Set the replication mode of the connection + + + This property and its corresponding enum are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Set PostgreSQL configuration parameter default values for the connection. + + + + + Configure the way arrays of value types are returned when requested as object instances. + + + + + Enables multiplexing, which allows more efficient use of connections. + + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A compatibility mode for special PostgreSQL server types. + + + + + Whether to trust the server certificate without validating it. + + + + + The time to wait (in seconds) while trying to execute a an internal command before terminating the attempt and generating an error. + + + + + Determines whether the specified object is equal to the current object. + + + + + Hash function. + + + + + + Gets an containing the keys of the . + + + + + Gets an containing the values in the . + + + + + Copies the elements of the to an Array, starting at a particular Array index. + + + The one-dimensional Array that is the destination of the elements copied from . + The Array must have zero-based indexing. + + + The zero-based index in array at which copying begins. + + + + + Returns an enumerator that iterates through the . + + + + + + + + + Marks on which participate in the connection + string. Optionally holds a set of synonyms for the property. + + + + + Holds a list of synonyms for the property. + + + + + Creates a . + + + + + Creates a . + + + + + An option specified in the connection string that activates special compatibility features. + + + + + No special server compatibility mode is active + + + + + The server is an Amazon Redshift instance. + + + + + The server is doesn't support full type loading from the PostgreSQL catalogs, support the basic set + of types via information hardcoded inside Npgsql. + + + + + Specifies how to manage SSL. + + + + + SSL is disabled. If the server requires SSL, the connection will fail. + + + + + Prefer non-SSL connections if the server allows them, but allow SSL connections. + + + + + Prefer SSL connections if the server allows them, but allow connections without SSL. + + + + + Fail the connection if the server doesn't support SSL. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate with host's name. + + + + + Specifies how to manage channel binding. + + + + + Channel binding is disabled. If the server requires channel binding, the connection will fail. + + + + + Prefer channel binding if the server allows it, but connect without it if not. + + + + + Fail the connection if the server doesn't support channel binding. + + + + + Specifies how the mapping of arrays of + value types + behaves with respect to nullability when they are requested via an API returning an . + + + + + Arrays of value types are always returned as non-nullable arrays (e.g. int[]). + If the PostgreSQL array contains a NULL value, an exception is thrown. This is the default mode. + + + + + Arrays of value types are always returned as nullable arrays (e.g. int?[]). + + + + + The type of array that gets returned is determined at runtime. + Arrays of value types are returned as non-nullable arrays (e.g. int[]) + if the actual instance that gets returned doesn't contain null values + and as nullable arrays (e.g. int?[]) if it does. + + When using this setting, make sure that your code is prepared to the fact + that the actual type of array instances returned from APIs like + may change on a row by row base. + + + + Specifies whether the connection shall be initialized as a physical or + logical replication connection + + + This enum and its corresponding property are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Replication disabled. This is the default + + + + + Physical replication enabled + + + + + Logical replication enabled + + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + This class represents an adapter from many commands: select, update, insert and delete to fill a . + + + + + Row updated event. + + + + + Row updating event. + + + + + Default constructor. + + + + + Constructor. + + + + + + Constructor. + + + + + + + Constructor. + + + + + + + Create row updated event. + + + + + Create row updating event. + + + + + Raise the RowUpdated event. + + + + + + Raise the RowUpdating event. + + + + + + Delete command. + + + + + Select command. + + + + + Update command. + + + + + Insert command. + + + + + Reads a forward-only stream of rows from a data source. + + + + + The behavior of the command with which this reader was executed. + + + + + In multiplexing, this is as the sending is managed in the write multiplexing loop, + and does not need to be awaited by the reader. + + + + + Holds the list of statements being executed by this reader. + + + + + The index of the current query resultset we're processing (within a multiquery) + + + + + Records, for each column, its starting offset and length in the current row. + Used only in non-sequential mode. + + + + + The index of the column that we're on, i.e. that has already been parsed, is + is memory and can be retrieved. Initialized to -1, which means we're on the column + count (which comes before the first column). + + + + + The position in the buffer at which the current data row message ends. + Used only when the row is consumed non-sequentially. + + + + + Determines, if we can consume the row non-sequentially. + Mostly useful for a sequential mode, when the row is already in the buffer. + Should always be true for the non-sequential mode. + + + + + The RowDescription message for the current resultset being processed + + + + + Stores the last converter info resolved by column, to speed up repeated reading. + + + + + Whether the current result set has rows + + + + + Is raised whenever Close() is called. + + + + + Advances the reader to the next record in a result set. + + true if there are more rows; otherwise false. + + The default position of a data reader is before the first record. Therefore, you must call Read to begin accessing data. + + + + + This is the asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Advances the reader to the next result when reading the results of a batch of statements. + + + + + + This is the asynchronous version of NextResult. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Internal implementation of NextResult + + + + + Note that in SchemaOnly mode there are no resultsets, and we read nothing from the backend (all + RowDescriptions have already been processed and are available) + + + + + Gets a value indicating the depth of nesting for the current row. Always returns zero. + + + + + Gets a value indicating whether the data reader is closed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. -1 for SELECT statements; 0 if no rows were affected or the statement failed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. 0 for SELECT statements, if no rows were affected or the statement failed. + + + + + Returns details about each statement that this reader will or has executed. + + + Note that some fields (i.e. rows and oid) are only populated as the reader + traverses the result. + + For commands with multiple queries, this exposes the number of rows affected on + a statement-by-statement basis, unlike + which exposes an aggregation across all statements. + + + + + Gets a value that indicates whether this DbDataReader contains one or more rows. + + + + + Indicates whether the reader is currently positioned on a row, i.e. whether reading a + column is possible. + This property is different from in that will + return true even if attempting to read a column will fail, e.g. before + has been called + + + + + Gets the name of the column, given the zero-based column ordinal. + + The zero-based column ordinal. + The name of the specified column. + + + + Gets the number of columns in the current row. + + + + + Consumes all result sets for this reader, leaving the connector ready for sending and processing further + queries + + + + + Releases the resources used by the . + + + + + Releases the resources used by the . + + + + + Closes the reader, allowing a new command to be executed. + + + + + Closes the reader, allowing a new command to be executed. + + + + + Gets the value of the specified column as a Boolean. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a byte. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single character. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 16-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 32-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 64-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a double-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a globally-unique identifier (GUID). + + The zero-based column ordinal. + The value of the specified column. + + + + Populates an array of objects with the column values of the current row. + + An array of Object into which to copy the attribute columns. + The number of instances of in the array. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a TimeSpan, + + + PostgreSQL's interval type has has a resolution of 1 microsecond and ranges from + -178000000 to 178000000 years, while .NET's TimeSpan has a resolution of 100 nanoseconds + and ranges from roughly -29247 to 29247 years. + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + The zero-based column ordinal. + The value of the specified column. + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + Currently only supported in non-sequential mode. + + The zero-based column ordinal. + A data reader. + + + + Reads a stream of bytes from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of bytes read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Reads a stream of characters from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of characters read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Asynchronously gets the value of the specified column as a type. + + The type of the value to be returned. + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Synchronously gets the value of the specified column as a type. + + Synchronously gets the value of the specified column as a type. + The column to be retrieved. + The column to be retrieved. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The name of the column. + The value of the specified column. + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + The zero-based column ordinal. + true if the specified column is equivalent to ; otherwise false. + + + + An asynchronous version of , which gets a value that indicates whether the column contains non-existent or missing values. + The parameter is currently ignored. + + The zero-based column to be retrieved. + + An optional token to cancel the asynchronous operation. The default value is . + + true if the specified column value is equivalent to otherwise false. + + + + Gets the column ordinal given the name of the column. + + The name of the column. + The zero-based column ordinal. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + The zero-based column index. + + + + Gets the data type information for the specified field. + This is the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + The zero-based column index. + + + + Gets the OID for the PostgreSQL type for the specified field, as it appears in the pg_type table. + + + This is a PostgreSQL-internal value that should not be relied upon and should only be used for + debugging purposes. + + The zero-based column index. + + + + Gets the data type of the specified column. + + The zero-based column ordinal. + The data type of the specified column. + + + + Returns an that can be used to iterate through the rows in the data reader. + + An that can be used to iterate through the rows in the data reader. + + + + Returns schema information for the columns in the current resultset. + + + + + + Asynchronously returns schema information for the columns in the current resultset. + + + + + + Returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Asynchronously returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Seeks to the given column. The 4-byte length is read and returned. + + + + + Checks that we have a RowDescription, but not necessary an actual resultset + (for operations which work in SchemaOnly mode. + + + + + Unbinds reader from the connector. + Should be called before the connector is returned to the pool. + + + + + + + + + + + Contains the connection string returned to the user from + after the connection has been opened. Does not contain the password unless Persist Security Info=true. + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + Semaphore to ensure we don't perform type loading and mapping setup concurrently for this data source. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a command ready for use against this . + + An optional SQL for the command. + + + + Creates a batch ready for use against this . + + + + + Creates a new for the given . + + + + + Creates a new for the given . + + + + + Manually sets the password to be used the next time a physical connection is opened. + Consider using instead. + + + + + + + + + + + + + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + Constructs a new , optionally starting out from the given . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + The exception that is thrown when server-related issues occur. + + + PostgreSQL errors (e.g. query SQL issues, constraint violations) are raised via + which is a subclass of this class. + Purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ArgumentException). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class with a specified error message. + + The message that describes the error. + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error or a timeout). + + + + + + + + + + + Initializes a new instance of the class with serialized data. + + The SerializationInfo that holds the serialized object data about the exception being thrown. + The StreamingContext that contains contextual information about the source or destination. + + + + A factory to create instances of various Npgsql objects. + + + + + Gets an instance of the . + This can be used to retrieve strongly typed data objects. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Specifies whether the specific supports the class. + + + + + Specifies whether the specific supports the class. + + + + + + + + + + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + A service object of type serviceType, or null if there is no service object of type serviceType. + + + + Large object manager. This class can be used to store very large files in a PostgreSQL database. + + + + + The largest chunk size (in bytes) read and write operations will read/write each roundtrip to the network. Default 4 MB. + + + + + Creates an NpgsqlLargeObjectManager for this connection. The connection must be opened to perform remote operations. + + + + + + Execute a function + + + + + Execute a function that returns a byte array + + + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + The oid for the large object created + If an oid is already in use + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + The oid for the large object created + If an oid is already in use + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Deletes a large object on the backend. + + Oid of the object to delete + + + + Deletes a large object on the backend. + + Oid of the object to delete + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + An interface to remotely control the seekable stream for an opened large object on a PostgreSQL server. + Note that the OpenRead/OpenReadWrite method as well as all operations performed on this stream must be wrapped inside a database transaction. + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + How many bytes actually read, or 0 if end of file was already reached. + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + + An optional token to cancel the asynchronous operation. The default value is . + + How many bytes actually read, or 0 if end of file was already reached. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + CanTimeout always returns false. + + + + + CanRead always returns true, unless the stream has been closed. + + + + + CanWrite returns true if the stream was opened with write permissions, and the stream has not been closed. + + + + + CanSeek always returns true, unless the stream has been closed. + + + + + Returns the current position in the stream. Getting the current position does not need a round-trip to the server, however setting the current position does. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Does nothing. + + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases resources at the backend allocated for this stream. + + + + + Releases resources at the backend allocated for this stream, iff disposing is true. + + Whether to release resources allocated at the backend. + + + + Configures Npgsql logging + + + + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to false. + + + + + + Globally initializes Npgsql logging to use the provided . + Must be called before any Npgsql APIs are used. + + + This is a legacy-only, backwards compatibility API. New applications should set the logger factory on + and use the resulting instead. + + + The logging factory to use when logging from Npgsql. + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to . + + + + + An which manages connections for multiple hosts, is aware of their states (primary, secondary, + offline...) and can perform failover and load balancing across them. + + + See . + + + + + Returns a new, unopened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Returns an that wraps this multi-host one with the given server type. + + Specifies the server type (e.g. primary, standby). + + + + Clears the database state (primary, secondary, offline...) for all data sources managed by this multi-host data source. + Can be useful to make Npgsql retry a PostgreSQL instance which was previously detected to be offline. + + + + + Reads a forward-only stream of rows from a nested data source. + Can be retrieved using or + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + + The zero-based column ordinal. + A data reader. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides information on a PostgreSQL notification. Notifications are sent when your connection has registered for + notifications on a specific channel via the LISTEN command. NOTIFY can be used to generate such notifications, + allowing for an inter-connection communication channel. + + + + + Process ID of the PostgreSQL backend that sent this notification. + + + + + The channel on which the notification was sent. + + + + + An optional payload string that was sent with this notification. + + + + + Thrown when trying to use a connection that is already busy performing some other operation. + Provides information on the already-executing operation to help with debugging. + + + + + Creates a new instance of . + + + A command which was in progress when the operation which triggered this exception was executed. + + + + + If the connection is busy with another command, this will contain a reference to that command. + Otherwise, if the connection if busy with another type of operation (e.g. COPY), contains + . + + + + + This class represents a parameter to a command that will be sent to server + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the parameter name and a value. + + The name of the parameter to map. + The value of the . + +

+ When you specify an in the value parameter, the is + inferred from the CLR type. +

+

+ When using this constructor, you must be aware of a possible misuse of the constructor which takes a + parameter. This happens when calling this constructor passing an int 0 and the compiler thinks you are passing a value of + . Use for example to have compiler calling the correct constructor. +

+
+
+ + + Initializes a new instance of the class with the parameter name and the data type. + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Gets or sets The name of the . + + The name of the . + The default is an empty string. + + + + + + + Gets or sets the value of the parameter. + + + An that is the value of the parameter. + The default value is . + + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Used to specify which PostgreSQL type will be sent to the database for this parameter. + + + + + + + + + + + Gets or sets the maximum number of digits used to represent the property. + + + The maximum number of digits used to represent the property. + The default value is 0, which indicates that the data provider sets the precision for . + + + + Gets or sets the number of decimal places to which is resolved. + + The number of decimal places to which is resolved. The default is 0. + + + + + + + + + + + + + + + + The collection to which this parameter belongs, if any. + + + + + The PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This property is automatically set if parameters have been derived via + and can be used to + acquire additional information about the parameters' data type. + + + + Attempt to resolve a type info based on available (postgres) type information on the parameter. + + + Bind the current value to the type info, truncate (if applicable), take its size, and do any final validation before writing. + + + + + + + Creates a new that is a copy of the current instance. + + A new that is a copy of this instance. + + + + Represents a collection of parameters relevant to a as well as their respective mappings to columns in + a . + + + + + Initializes a new instance of the NpgsqlParameterCollection class. + + + + + Gets the with the specified name. + + The name of the to retrieve. + + The with the specified name, or a reference if the parameter is not found. + + + + + Gets the at the specified index. + + The zero-based index of the to retrieve. + The at the specified index. + + + + Adds the specified object to the . + + The to add to the collection. + The index of the new object. + + + + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name, + data type and value. + + The name of the . + One of the NpgsqlDbType values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The name of the source column. + The parameter that was added. + + + + Adds a to the given the specified value. + + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified data type and value. + + One of the values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the parameter name and the data type. + + The name of the parameter. + One of the values. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, + and the column length. + + The name of the parameter. + One of the values. + The length of the column. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, the + column length, and the source column name. + + The name of the parameter. + One of the values. + The length of the column. + The name of the source column. + The index of the new object. + + + + + + + + + + + + + + + + Removes the specified from the collection using a specific index. + + The zero-based index of the parameter. + + + + + + + Removes the specified from the collection. + + The name of the to remove from the collection. + + + + Removes the specified from the collection. + + The to remove from the collection. + + + + + + + Gets a value indicating whether a with the specified parameter name exists in the collection. + + The name of the object to find. + + A reference to the requested parameter is returned in this out param if it is found in the list. + This value is if the parameter is not found. + + + if the collection contains the parameter and param will contain the parameter; + otherwise, . + + + + + Removes all items from the collection. + + + + + + + + + + + + + + + + + Gets the number of objects in the collection. + + The number of objects in the collection. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Report the offset within the collection of the given parameter. + + Parameter to find. + Index of the parameter, or -1 if the parameter is not present. + + + + Insert the specified parameter into the collection. + + Index of the existing parameter before which to insert the new one. + Parameter to insert. + + + + Report whether the specified parameter is present in the collection. + + Parameter to find. + True if the parameter was found, otherwise false. + + + + Remove the specified parameter from the collection. + + Parameter to remove. + True if the parameter was found and removed, otherwise false. + + + + Convert collection to a System.Array. + + Destination array. + Starting index in destination array. + + + + Convert collection to a System.Array. + + NpgsqlParameter[] + + + + The parameter collection includes no parameters. + + + + + The parameter collection includes only named parameters. + + + + + The parameter collection includes only positional parameters. + + + + + The parameter collection includes both named and positional parameters. + This is only supported when is set to . + + + + + A generic version of which provides more type safety and + avoids boxing of value types. Use instead of . + + The type of the value that will be stored in the parameter. + + + + Gets or sets the strongly-typed value of the parameter. + + + + + Gets or sets the value of the parameter. This delegates to . + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a parameter name and value. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Provides an API for a raw binary COPY operation, a high-performance data import/export mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The copy binary format header signature + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Writer for a text import, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Reader for a text export, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing export. + + + + + Asynchronously cancels and terminates an ongoing export. + + + + + Provides the underlying mechanism for reading schema information. + + + + + Returns the MetaDataCollections that lists all possible collections. + + The MetaDataCollections + + + + Returns the Restrictions that contains the meaning and position of the values in the restrictions array. + + The Restrictions + + + + Populates some generic type information that is common for base types, arrays, enums, etc. Some will + be overridden later. + + + + + Sets some custom, hardcoded info on a DataType row that cannot be loaded/inferred from PostgreSQL + + + + + List of keywords taken from PostgreSQL 9.0 reserved words documentation. + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + On this builder, various features are disabled by default; unless you're looking to save on code size (e.g. when publishing with + NativeAOT), use instead. + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + Constructs a new , optionally starting out from the given + . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + The same builder instance so that multiple calls can be chained. + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + The same builder instance so that multiple calls can be chained. + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sets up mappings for the PostgreSQL array types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL range types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL record type as a .NET object[]. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL tsquery and tsvector types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL ltree extension types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for extra conversions from PostgreSQL to .NET types. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use TLS/SSl encryption for connections to PostgreSQL. This does not guarantee that encryption will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use GSS/SSPI authentication for connections to PostgreSQL. This does not guarantee that it will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + Options to configure Npgsql's support for OpenTelemetry tracing. + Currently no options are available. + + + + + Represents a transaction to be made in a PostgreSQL database. This class cannot be inherited. + + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + If true, the transaction has been committed/rolled back, but not disposed. + + + + + Specifies the isolation level for this transaction. + + The isolation level for this transaction. The default is . + + + + Commits the database transaction. + + + + + Commits the database transaction. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Rolls back a transaction from a pending state. + + + + + Rolls back a transaction from a pending state. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Creates a transaction save point. + + The name of the savepoint. + + This method does not cause a database roundtrip to be made. The savepoint creation statement will instead be sent along with + the next command. + + + + + Creates a transaction save point. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + This method does not cause a database roundtrip to be made, and will therefore always complete synchronously. + The savepoint creation statement will instead be sent along with the next command. + + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Indicates whether this transaction supports database savepoints. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, without rolling back. Used only in special circumstances, e.g. when + the connection is broken. + + + + + Unbinds transaction from the connector. + Should be called before the connector is returned to the pool. + + + + + Represents a .pgpass file, which contains passwords for noninteractive connections + + + + + File name being parsed for credentials + + + + + Initializes a new instance of the class + + + + + + Parses file content and gets all credentials from the file + + corresponding to all lines in the .pgpass file + + + + Searches queries loaded from .PGPASS file to find first entry matching the provided parameters. + + Hostname to query. Use null to match any. + Port to query. Use null to match any. + Database to query. Use null to match any. + User name to query. Use null to match any. + Matching if match was found. Otherwise, returns null. + + + + Represents a hostname, port, database, username, and password combination that has been retrieved from a .pgpass file + + + + + Hostname parsed from the .pgpass file + + + + + Port parsed from the .pgpass file + + + + + Database parsed from the .pgpass file + + + + + User name parsed from the .pgpass file + + + + + Password parsed from the .pgpass file + + + + + This class represents an entry from the .pgpass file + + Hostname parsed from the .pgpass file + Port parsed from the .pgpass file + Database parsed from the .pgpass file + User name parsed from the .pgpass file + Password parsed from the .pgpass file + + + + Creates new based on string in the format hostname:port:database:username:password. The : and \ characters should be escaped with a \. + + string for the entry from the pgpass file + New instance of for the string + Entry is not formatted as hostname:port:database:username:password or non-wildcard port is not a number + + + + Checks whether this matches the parameters supplied + + Hostname to check against this entry + Port to check against this entry + Database to check against this entry + Username to check against this entry + True if the entry is a match. False otherwise. + + + + Checks if 2 strings are a match for a considering that either value can be a wildcard (*) + + Value being searched + Value from the PGPASS entry + True if the values are a match. False otherwise. + + + + Tracks all connectors currently managed by this pool, whether idle or busy. + Only updated rarely - when physical connections are opened/closed - but is read in perf-sensitive contexts. + + + + + Reader side for the idle connector channel. Contains nulls in order to release waiting attempts after + a connector has been physically closed/broken. + + + + + Incremented every time this pool is cleared via or + . Allows us to identify connections which were + created before the clear. + + + + + Provides lookup for a pool based on a connection string. + + + Note that pools created directly as are referenced directly by users, and aren't managed here. + + + + + Resets the pool manager to its initial state, for test purposes only. + Assumes that no other threads are accessing the pool. + + + + + The default implementation of , for standard PostgreSQL databases.. + + + + + + + + The default implementation of NpgsqlDatabase, for standard PostgreSQL databases. + + + + + The PostgreSQL types detected in the database. + + + + + + + + The PostgreSQL version string as returned by the version() function. Populated during loading. + + + + + True if the backend is Amazon Redshift; otherwise, false. + + + + + + + + True if the 'pg_enum' table includes the 'enumsortorder' column; otherwise, false. + + + + + True if the 'pg_type' table includes the 'typcategory' column; otherwise, false. + + + pg_type.typcategory is added after 8.4. + see: https://www.postgresql.org/docs/8.4/static/catalog-pg-type.html#CATALOG-TYPCATEGORY-TABLE + + + + + Loads database information from the PostgreSQL database specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A task representing the asynchronous operation. + + + + + Generates a raw SQL query string to select type information. + + + Select all types (base, array which is also base, enum, range, composite). + Note that arrays are distinguished from primitive types through them having typreceive=array_recv. + Order by primitives first, container later. + For arrays and ranges, join in the element OID and type (to filter out arrays of unhandled + types). + + + + + Loads type information from the backend specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A collection of types loaded from the backend. + + + Unknown typtype for type '{internalName}' in pg_type: {typeChar}. + + + + Provides constants for PostgreSQL error codes. + + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The exception that is thrown when the PostgreSQL backend reports errors (e.g. query + SQL issues, constraint violations). + + + This exception only corresponds to a PostgreSQL-delivered error. + Other errors (e.g. network issues) will be raised via , + and purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ). + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html, + https://www.postgresql.org/docs/current/static/protocol-error-fields.html + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Populates a with the data needed to serialize the target object. + + The to populate with data. + The destination (see ) for this serialization. + + + + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error). Check . + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + Constants are defined in . + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + + https://www.postgresql.org/docs/current/static/protocol-flow.html#PROTOCOL-ASYNC + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Provides data for a PostgreSQL notice event. + + + + + The Notice that was sent from the database. + + + + + Represents a PostgreSQL array data type, which can hold several multiple values in a single column. + + + See https://www.postgresql.org/docs/current/static/arrays.html. + + + + + The PostgreSQL data type of the element contained within this array. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + + + + Represents a PostgreSQL base data type, which is a simple scalar value. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + + + + Represents a PostgreSQL composite data type, which can hold multiple fields of varying types in a single column. + + + See https://www.postgresql.org/docs/current/static/rowtypes.html. + + + + + Holds the name and types for all fields. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a field in a PostgreSQL composite data type. + + + + + The name of the composite field. + + + + + The type of the composite field. + + + + + + + + Represents a PostgreSQL domain type. + + + See https://www.postgresql.org/docs/current/static/sql-createdomain.html. + + When PostgreSQL returns a RowDescription for a domain type, the type OID is the base type's + (so fetching a domain type over text returns a RowDescription for text). + However, when a composite type is returned, the type OID there is that of the domain, + so we provide "clean" support for domain types. + + + + + The PostgreSQL data type of the base type, i.e. the type this domain is based on. + + + + + True if the domain has a NOT NULL constraint, otherwise false. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a PostgreSQL enum data type. + + + See https://www.postgresql.org/docs/current/static/datatype-enum.html. + + + + + The enum's fields. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Represents a PostgreSQL multirange data type. + + +

See https://www.postgresql.org/docs/current/static/rangetypes.html.

+

Multirange types were introduced in PostgreSQL 14.

+
+
+ + + The PostgreSQL data type of the range of this multirange. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Represents a PostgreSQL range data type. + + + See https://www.postgresql.org/docs/current/static/rangetypes.html. + + + + + The PostgreSQL data type of the subtype of this range. + + + + + The PostgreSQL data type of the multirange of this range. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Represents a PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This class is abstract, see derived classes for concrete types of PostgreSQL types. + + + Instances of this class are shared between connections to the same databases. + For more info about what this class and its subclasses represent, see + https://www.postgresql.org/docs/current/static/catalog-pg-type.html. + + + + + Constructs a representation of a PostgreSQL data type. + + The data type's namespace (or schema). + The data type's name. + The data type's OID. + + + + Constructs a representation of a PostgreSQL data type. + + The data type's fully qualified name. + The data type's OID. + + + + The data type's OID - a unique id identifying the data type in a given database (in pg_type). + + + + + The data type's namespace (or schema). + + + + + The data type's name. + + + Note that this is the standard, user-displayable type name (e.g. integer[]) rather than the internal + PostgreSQL name as it is in pg_type (_int4). See for the latter. + + + + + The full name of the backend type, including its namespace. + + + + + A display name for this backend type, including the namespace unless it is pg_catalog (the namespace + for all built-in types). + + + + + The data type's internal PostgreSQL name (e.g. _int4 not integer[]). + See for a more user-friendly name. + + + + + If a PostgreSQL array type exists for this type, it will be referenced here. + Otherwise null. + + + + + If a PostgreSQL range type exists for this type, it will be referenced here. + Otherwise null. + + + + + Generates the type name including any facts (size, precision, scale), given the PostgreSQL type modifier. + + + + + Returns a string that represents the current object. + + + + Canonizes (nested) domain types to underlying types, does not handle composites. + + + A base type. + + + An enum carrying its variants. + + + A pseudo type like anyarray. + + + + Represents a PostgreSQL data type that isn't known to Npgsql and cannot be handled. + + + + + Constructs a the unknown backend type. + + + + + Internally represents a statement has been prepared, is in the process of being prepared, or is a + candidate for preparation (i.e. awaiting further usages). + + + + + If true, the user explicitly requested this statement be prepared. It does not get closed as part of + the automatic preparation LRU mechanism. + + + + + If this statement is about to be prepared, but replaces a previous statement which needs to be closed, + this holds the name of the previous statement. Otherwise null. + + + + + Contains the handler types for a prepared statement's parameters, for overloaded cases (same SQL, different param types) + Only populated after the statement has been prepared (i.e. null for candidates). + + + + + The state of a . + + + + + The statement hasn't been prepared yet, nor is it in the process of being prepared. + This is the value for autoprepare candidates which haven't been prepared yet, and is also + a temporary state during preparation. + + + + + The statement is in the process of being prepared. + + + + + The statement has been fully prepared and can be executed. + + + + + The statement is in the process of being unprepared. This is a temporary state that only occurs during + unprepare. Specifically, it means that a Close message for the statement has already been written + to the write buffer. + + + + + The statement has been unprepared and is no longer usable. + + + + + The statement was invalidated because e.g. table schema has changed since preparation. + + + + + Total number of current prepared statements (whether explicit or automatic). + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + Creates a new replication slot and returns information about the newly-created slot. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + The name of the output plugin used for logical decoding (see + + https://www.postgresql.org/docs/current/logicaldecoding-output-plugin.html). + + if this replication slot shall be temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + A to specify what to do with the + snapshot created during logical slot initialization. , which is + also the default, will export the snapshot for use in other sessions. This option can't be used inside a + transaction. will use the snapshot for the current transaction + executing the command. This option must be used in a transaction, and + must be the first command run in that transaction. Finally, will + just use the snapshot for logical decoding as normal but won't do anything else with it. + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a class that + can be used to initialize instances of subclasses. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + or at the slot's consistent point if isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + The collection of options passed to the slot's logical decoding plugin. + + Whether the plugin will be bypassing and reading directly from the buffer. + + A representing an that + can be used to stream WAL entries in form of instances. + + + + Contains information about a newly-created logical replication slot. + + + + + Creates a new logical replication slot + + The logical decoding output plugin to the corresponding replication slot was created for. + A struct with information to create the replication slot. + + + + The identifier of the snapshot exported by the command. + The snapshot is valid until a new command is executed on this connection or the replication connection is closed. + + + + + The name of the output plugin used by the newly-created logical replication slot. + + + + + The WAL location at which the slot became consistent. + This is the earliest location from which streaming can start on this replication slot. + + + + + Represents a logical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Decides what to do with the snapshot created during logical slot initialization. + + + + + Export the snapshot for use in other sessions. This is the default. + This option can't be used inside a transaction. + + + + + Use the snapshot for the current transaction executing the command. + This option must be used in a transaction, and CREATE_REPLICATION_SLOT must be the first command run + in that transaction. + + + + + Just use the snapshot for logical decoding as normal but don't do anything else with it. + + + + + Logical Replication Protocol begin message + + + + + The final LSN of the transaction. + + + + + Commit timestamp of the transaction. + The value is in number of microseconds since PostgreSQL epoch (2000-01-01). + + + + + Logical Replication Protocol begin prepare message + + + + + Logical Replication Protocol commit message + + + + + Flags; currently unused. + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit. + + + + + No flags. + + + + + Logical Replication Protocol commit prepared message + + + + + Flags for the commit prepared; currently unused. + + + + + The LSN of the commit prepared. + + + + + The end LSN of the commit prepared transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to DEFAULT. + + + + + Columns representing the new row. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY REPLICA IDENTITY set to FULL. + + + + + Columns representing the deleted row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to FULL. + + + + + Columns representing the old row. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to USING INDEX. + + + + + Columns representing the key. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol insert message + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY set to DEFAULT or USING INDEX. + + + + + Columns representing the key. + + + + + Logical Replication Protocol logical decoding message + + + + + Flags; Either 0 for no flags or 1 if the logical decoding message is transactional. + + + + + The LSN of the logical decoding message. + + + + + The prefix of the logical decoding message. + + + + + The content of the logical decoding message. + + + + + Logical Replication Protocol origin message + + + + + The LSN of the commit on the origin server. + + + + + Name of the origin. + + + + + The base class of all Logical Replication Protocol Messages + + + See https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html for details about the + protocol. + + + + + + + + Abstract base class for Logical Replication Protocol prepare and begin prepare message + + + + + The user defined GID of the two-phase transaction. + + + + + Logical Replication Protocol prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Abstract base class for the logical replication protocol begin prepare and prepare message + + + + + The LSN of the prepare. + + + + + The end LSN of the prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Logical Replication Protocol relation message + + + + + ID of the relation. + + + + + Namespace (empty string for pg_catalog). + + + + + Relation name. + + + + + Replica identity setting for the relation (same as relreplident in pg_class): + columns used to form “replica identity” for rows. + + + + + Relation columns + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Flags for the column. + + + + + No flags. + + + + + Marks the column as part of the key. + + + + + Replica identity setting for the relation (same as relreplident in pg_class). + + + See + + + + + Default (primary key, if any). + + + + + Nothing. + + + + + All columns. + + + + + Index with indisreplident set (same as nothing if the index used has been dropped) + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. Currently can be either 0 for no flags or 1 which marks the column as part of the key. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Logical Replication Protocol rollback prepared message + + + + + Flags for the rollback prepared; currently unused. + + + + + The end LSN of the prepared transaction. + + + + + The end LSN of the rollback prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Rollback timestamp of the transaction. + + + + + Flags for the rollback prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream abort message + + + + + Xid of the subtransaction (will be same as xid of the transaction for top-level transactions). + + + + + Logical Replication Protocol stream commit message + + + + + Flags; currently unused (must be 0). + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Logical Replication Protocol stream prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream start message + + + + + A value of 1 indicates this is the first stream segment for this XID, 0 for any other stream segment. + + + + + Logical Replication Protocol stream stop message + + + + + The common base class for all streaming replication messages that can be part of a streaming transaction (protocol V2) + + + + + Xid of the transaction (only present for streamed transactions). + + + + + The common base class for all replication messages that set the transaction xid of a transaction + + + + + Xid of the transaction. + + + + + Logical Replication Protocol truncate message + + + + + Option flags for TRUNCATE + + + + + The relations being truncated. + + + + + Enum representing the additional options for the TRUNCATE command as flags + + + + + No additional option was specified + + + + + CASCADE was specified + + + + + RESTART IDENTITY was specified + + + + + Logical Replication Protocol type message + + + + + ID of the data type. + + + + + Namespace (empty string for pg_catalog). + + + + + Name of the data type. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Options to be passed to the pgoutput plugin + + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + The version of the Logical Streaming Replication Protocol + + + + + The publication names to stream + + + + + Send values in binary representation + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of in-progress transactions + + + This works as of logical streaming replication protocol version 2 (PostgreSQL 14+) + + + + + Write logical decoding messages into the replication stream + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of prepared transactions + + + This works in PostgreSQL versions 15+ + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot initialized for for the logical streaming replication protocol + (pgoutput logical decoding plugin). + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The representing the existing replication slot + + + + Creates a new instance. + + + This constructor is intended to be consumed by plugins sitting on top of + + + The from which the new instance should be initialized + + + + Represents a streaming tuple containing . + + + + + The number of columns in the tuple. + + + + + + + + Represents a column value in a logical replication session. + + + + + The length of the value in bytes. + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + true if the specified column is equivalent to ; otherwise false. + + + + Gets a value that indicates whether the column contains an unchanged TOASTed value (the actual value is not sent). + + Whether the specified column is an unchanged TOASTed value. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + + + + Gets the data type information for the specified field. + This is be the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + + + + Gets the data type of the specified column. + + The data type of the specified column. + + + + Gets the value of the specified column as a type. + + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Gets the value of the specified column as an instance of . + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Retrieves data as a . + + + + + Retrieves data as a . + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Identifies the data as NULL value. + + + + + Identifies unchanged TOASTed value (the actual value is not sent). + + + + + Identifies the data as text formatted value. + + + + + Identifies the data as binary value. + + Added in PG14 + + + + Extension methods to use with the pg_output logical decoding plugin. + + + + + Creates a class that wraps a replication slot using the + "pgoutput" logical decoding plugin and can be used to start streaming replication via the logical + streaming replication protocol. + + + See https://www.postgresql.org/docs/current/protocol-logical-replication.html + and https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html + for more information. + + The to use for creating the replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start the Logical Streaming Replication Protocol (pgoutput logical decoding plugin), + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The collection of options passed to the slot's logical decoding plugin. + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a physical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Creates a that wraps a PostgreSQL physical replication slot and + can be used to start physical streaming replication + + + The name of the slot to create. Must be a valid replication slot name + (see Section 26.2.6.1). + + + if this replication slot shall be a temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + + + If this is set to this physical replication slot reserves WAL immediately. Otherwise, + WAL is only reserved upon connection from a streaming replication client. + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a that represents the + newly-created replication slot. + + + + + Read some information associated to a replication slot. + + This command is currently only supported for physical replication slots. + + + + The name of the slot to read. Must be a valid replication slot name + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a or + if the replication slot does not exist. + + + + Instructs the server to start streaming the WAL for physical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for physical replication, starting at the WAL location + and timeline id specified in . The server can reply with an error, for example + if the requested section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The must contain a valid to be used for this overload. + + + The token to be used for stopping the replication. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Wraps a replication slot that uses physical replication. + + + + + Creates a new instance. + + + Create a instance with this constructor to wrap an existing PostgreSQL replication slot + that has been initialized for physical replication. + + The name of the existing replication slot + The replication slot's restart_lsn + The timeline ID associated to restart_lsn, following the current timeline history. + + + + The replication slot's restart_lsn. + + + + + The timeline ID associated to restart_lsn, following the current timeline history. + + + + + Defines the core behavior of replication connections and provides the base class for + and + . + + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + + The connection string that includes the server name, the database name, and other parameters needed to establish the initial + connection. The default value is an empty string. + + + Since replication connections are a special kind of connection, + , , + and + are always disabled no matter what you set them to in your connection string. + + + + + The location of the last WAL byte + 1 received in the standby. + + + + + The location of the last WAL byte + 1 flushed to disk in the standby. + + + + + The location of the last WAL byte + 1 applied (e. g. written to disk) in the standby. + + + + + Send replies at least this often. + Timeout. disables automated replies. + + + + + Time that receiver waits for communication from master. + Timeout. disables the timeout. + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Gets or sets the wait time before terminating the attempt to execute a command and generating an error. + + The time to wait for the command to execute. The default value is 30 seconds. + + + + The client encoding for the connection + This can only be called when there is an active connection. + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Opens a database replication connection with the property settings specified by the + . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous open operation. + + + + Closes the replication connection and performs tasks associated + with freeing, releasing, or resetting its unmanaged resources asynchronously. + + A task that represents the asynchronous dispose operation. + + + + Requests the server to identify itself. + + + An optional token to cancel the asynchronous operation. The default value is . + + + A containing information about the system we are connected to. + + + + + Requests the server to send the current setting of a run-time parameter. + This is similar to the SQL command SHOW. + + The name of a run-time parameter. + Available parameters are documented in https://www.postgresql.org/docs/current/runtime-config.html. + + + An optional token to cancel the asynchronous operation. The default value is . + + The current setting of the run-time parameter specified in as . + + + + Requests the server to send over the timeline history file for timeline tli. + + The timeline for which the history file should be sent. + + An optional token to cancel the asynchronous operation. The default value is . + + The timeline history file for timeline tli + + + + Sets the current status of the replication as it is interpreted by the consuming client. The value supplied + in will be sent to the server via and + with the next status update. + + A status update which will happen upon server request, upon expiration of + our upon an enforced status update via , whichever happens first. + If you want the value you set here to be pushed to the server immediately (e. g. in synchronous replication scenarios), + call after calling this method. + + + + This is a convenience method setting both and in one operation. + You can use it if your application processes replication messages in a way that doesn't care about the difference between + writing a message and flushing it to a permanent storage medium. + + The location of the last WAL byte + 1 applied (e. g. processed or written to disk) and flushed to disk in the standby. + + + + Sends a forced status update to PostgreSQL with the current WAL tracking information. + + The connection currently isn't streaming + A Task representing the sending of the status update (and not any PostgreSQL response). + + + + Drops a replication slot, freeing any reserved server-side resources. + If the slot is a logical slot that was created in a database other than + the database the walsender is connected to, this command fails. + + The name of the slot to drop. + + causes the command to wait until the slot becomes + inactive if it currently is active instead of the default behavior of raising an error. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous drop operation. + + + + The common base class for all streaming replication messages + + + + + The starting point of the WAL data in this message. + + + + + The current end of WAL on the server. + + + + + The server's system clock at the time this message was transmitted, as microseconds since midnight on 2000-01-01. + + + Since the client using Npgsql and the server may be located in different time zones, + as of Npgsql 7.0 this value is no longer converted to local time but keeps its original value in UTC. + You can check if you don't want to introduce behavior depending on Npgsql versions. + + + + + Contains information about a newly-created replication slot. + + + + + The name of the newly-created replication slot. + + + + + Contains information about a replication slot. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + The name of the replication slot. + + + + + The WAL location at which the slot became consistent. + + + + + The identifier of the snapshot exported by the CREATE_REPLICATION_SLOT command. + + + + + Contains server identification information returned from . + + + + + The unique system identifier identifying the cluster. + This can be used to check that the base backup used to initialize the standby came from the same cluster. + + + + + Current timeline ID. Also useful to check that the standby is consistent with the master. + + + + + Current WAL flush location. Useful to get a known location in the write-ahead log where streaming can start. + + + + + Database connected to. + + + + + Text representations of PostgreSQL WAL operations decoded by the "test_decoding" plugin. See + https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Decoded text representation of the operation performed in this WAL entry + + + + + + + + Returns a clone of this message, which can be accessed after other replication messages have been retrieved. + + + + + Options to be passed to the test_decoding plugin + + + + + Creates a new instance of . + + Include the transaction number for BEGIN and COMMIT command output + Include the timestamp for COMMIT command output + Set the output mode to binary + Skip output for transactions that didn't change the database + Only output data that don't have the replication origin set + Include output from table rewrites that were caused by DDL statements + Enable streaming output + + + + Include the transaction number for BEGIN and COMMIT command output + + + + + Include the timestamp for COMMIT command output + + + + + Set the output mode to binary + + + + + Skip output for transactions that didn't change the database + + + + + Only output data that don't have the replication origin set + + + + + Include output from table rewrites that were caused by DDL statements + + + + + Enable streaming output + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot + initialized for for the test_decoding logical decoding plugin. + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The representing the existing replication slot + + + + Extension methods to use with the + test_decoding logical decoding plugin. + See https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Creates a class that wraps a replication slot using the + test_decoding logical decoding plugin. + + + See https://www.postgresql.org/docs/current/test-decoding.html + for more information. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start streaming the WAL for logical replication using the test_decoding logical decoding plugin, + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The collection of options passed to the slot's logical decoding plugin. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a PostgreSQL timeline history file + + + + + File name of the timeline history file, e.g., 00000002.history. + + + + + Contents of the timeline history file. + + + + + A message representing a section of the WAL data stream. + + + + + A section of the WAL data stream that is raw WAL data in physical replication or decoded with the selected + logical decoding plugin in logical replication. It is only valid until the next + is requested from the stream. + + + A single WAL record is never split across two XLogData messages. + When a WAL record crosses a WAL page boundary, and is therefore already split using continuation records, + it can be split at the page boundary. In other words, the first main WAL record and its continuation + records can be sent in different XLogData messages. + + + + + Stripped-down version of , mainly to support Amazon Redshift. + + + + + Performs some post-setup configuration that's common to both table columns and non-columns. + + + + + Provides schema information about a column. + + + Note that this can correspond to a field returned in a query which isn't an actual table column + + See https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldatareader.getschematable(v=vs.110).aspx + for information on the meaning of the different fields. + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The describing the type of this column. + + + + + The OID of the type of this column in the PostgreSQL pg_type catalog table. + + + + + The OID of the PostgreSQL table of this column. + + + + + The column's position within its table. Note that this is different from , + which is the column's position within the resultset. + + + + + The default SQL expression for this column. + + + + + The value for this column's type. + + + + + + + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + + Specifies server type preference. + + + + + Any successful connection is acceptable. + + + + + Session must accept read-write transactions by default (that is, the server must not be in hot standby mode and the + default_transaction_read_only parameter must be off). + + + + + Session must not accept read-write transactions by default (the converse). + + + + + Server must not be in hot standby mode. + + + + + Server must be in hot standby mode. + + + + + First try to find a primary server, but if none of the listed hosts is a primary server, try again in mode. + + + + + First try to find a standby server, but if none of the listed hosts is a standby server, try again in mode. + + + + + Utility class to execute a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it and at the same time prevent event if the original fails later. + + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The result . + The representing the asynchronous wait. + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The representing the asynchronous wait. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A type mapper, managing how to read and write CLR values to PostgreSQL data types. + + + The preferred way to manage type mappings is on . An alternative, but discouraged, method, is to + manage them globally via ). + + + + + The default name translator to convert CLR type names and member names. Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET enum type to be mapped + + + + Removes an existing enum mapping. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing enum mapping. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR type to a PostgreSQL composite type. + + + CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your members to manually specify a PostgreSQL name. + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET type to be mapped + + + + Removes an existing composite mapping. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to + + + + + Maps a CLR type to a composite type. + + + Maps CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + The .NET type to be mapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing composite mapping. + + The .NET type to be unmapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Adds a type info resolver factory which can add or modify support for PostgreSQL types. + Typically used by plugins. + + The type resolver factory to be added. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Resets all mapping changes performed on this type mapper and reverts it to its original, starting state. + + + + + The base class for user type mappings. + + + + + The name of the PostgreSQL type that this mapping is for. + + + + + The CLR type that this mapping is for. + + + + + Represents a timeout that will expire at some point. + + + + + A wrapper around to simplify reset management. + + + Since there's no way to reset a once it was cancelled, + we need to make sure that an existing cancellation token source hasn't been cancelled, + every time we start it (see https://github.com/dotnet/runtime/issues/4694). + + + + + Used, so we wouldn't concurently use the cts for the cancellation, while it's being disposed + + + + + Set the timeout on the wrapped + and make sure that it hasn't been cancelled yet + + + An optional token to cancel the asynchronous operation. The default value is . + + The from the wrapped + + + + Restart the timeout on the wrapped without reinitializing it, + even if is already set to + + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + The from the wrapped + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + + + + Set the timeout on the wrapped + to + + + can still arrive at a state + where it's value is if the + passed to gets a cancellation request. + If this is the case it will be resolved upon the next call to + or . Calling multiple times or without calling + first will do no any harm (besides eating a tiny amount of CPU cycles). + + + + + Cancel the wrapped + + + + + Cancel the wrapped after delay + + + + + The from the wrapped + . + + + The token is only valid after calling + and before calling the next time. + Otherwise you may end up with a token that has already been + cancelled or belongs to a cancellation token source that has + been disposed. + + + + + Allocation free helper function to find if version is greater than expected + + + + + + + + Note that a connection may be closed before its TransactionScope completes. In this case we close the NpgsqlConnection + as usual but the connector in a special list in the pool; it will be closed only when the scope completes. + + + + + Represents a PostgreSQL data type that can be written or read to the database. + Used in places such as to unambiguously specify + how to encode or decode values. + + + See https://www.postgresql.org/docs/current/static/datatype.html. + + + + + Corresponds to the PostgreSQL 8-byte "bigint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 8-byte floating-point "double" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 4-byte "integer" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL arbitrary-precision "numeric" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL floating-point "real" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 2-byte "smallint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL "money" type. + + See https://www.postgresql.org/docs/current/static/datatype-money.html + + + + Corresponds to the PostgreSQL "boolean" type. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL geometric "box" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "circle" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "line" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "lseg" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "path" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "point" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "polygon" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL "char(n)" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "text" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "varchar" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL internal "name" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "citext" type for the citext module. + + See https://www.postgresql.org/docs/current/static/citext.html + + + + Corresponds to the PostgreSQL "char" type. + + + This is an internal field and should normally not be used for regular applications. + + See https://www.postgresql.org/docs/current/static/datatype-text.html + + + + + Corresponds to the PostgreSQL "bytea" type, holding a raw byte string. + + See https://www.postgresql.org/docs/current/static/datatype-binary.html + + + + Corresponds to the PostgreSQL "date" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "interval" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the obsolete PostgreSQL "abstime" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "inet" type. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "cidr" type, a field storing an IPv4 or IPv6 network. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr" type, a field storing a 6-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr8" type, a field storing a 6-byte or 8-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "bit" type. + + See https://www.postgresql.org/docs/current/static/datatype-bit.html + + + + Corresponds to the PostgreSQL "varbit" type, a field storing a variable-length string of bits. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL "tsvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "tsquery" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "regconfig" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "uuid" type. + + See https://www.postgresql.org/docs/current/static/datatype-uuid.html + + + + Corresponds to the PostgreSQL "xml" type. + + See https://www.postgresql.org/docs/current/static/datatype-xml.html + + + + Corresponds to the PostgreSQL "json" type, a field storing JSON in text format. + + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonb" type, a field storing JSON in an optimized binary. + format. + + + Supported since PostgreSQL 9.4. + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonpath" type, a field storing JSON path in text format. + format. + + + Supported since PostgreSQL 12. + See https://www.postgresql.org/docs/current/datatype-json.html#DATATYPE-JSONPATH + + + + + Corresponds to the PostgreSQL "hstore" type, a dictionary of string key-value pairs. + + See https://www.postgresql.org/docs/current/static/hstore.html + + + + Corresponds to the PostgreSQL "refcursor" type. + + + + + Corresponds to the PostgreSQL internal "oidvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL internal "int2vector" type. + + + + + Corresponds to the PostgreSQL "oid" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid8" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "cid" type, an internal command identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "regtype" type, a numeric (OID) ID of a type in the pg_type table. + + + + + Corresponds to the PostgreSQL "tid" type, a tuple id identifying the physical location of a row within its table. + + + + + Corresponds to the PostgreSQL "pg_lsn" type, which can be used to store LSN (Log Sequence Number) data which + is a pointer to a location in the WAL. + + + See: https://www.postgresql.org/docs/current/datatype-pg-lsn.html and + https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=7d03a83f4d0736ba869fa6f93973f7623a27038a + + + + + A special value that can be used to send parameter values to the database without + specifying their type, allowing the database to cast them to another value based on context. + The value will be converted to a string and send as text. + + + This value shouldn't ordinarily be used, and makes sense only when sending a data type + unsupported by Npgsql. + + + + + The geometry type for PostgreSQL spatial extension PostGIS. + + + + + The geography (geodetic) type for PostgreSQL spatial extension PostGIS. + + + + + The PostgreSQL ltree type, each value is a label path "a.label.tree.value", forming a tree in a set. + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL lquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL ltxtquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + Corresponds to the PostgreSQL "int4range" type. + + + + + Corresponds to the PostgreSQL "int8range" type. + + + + + Corresponds to the PostgreSQL "numrange" type. + + + + + Corresponds to the PostgreSQL "tsrange" type. + + + + + Corresponds to the PostgreSQL "tstzrange" type. + + + + + Corresponds to the PostgreSQL "daterange" type. + + + + + Corresponds to the PostgreSQL "int4multirange" type. + + + + + Corresponds to the PostgreSQL "int8multirange" type. + + + + + Corresponds to the PostgreSQL "nummultirange" type. + + + + + Corresponds to the PostgreSQL "tsmultirange" type. + + + + + Corresponds to the PostgreSQL "tstzmultirange" type. + + + + + Corresponds to the PostgreSQL "datemultirange" type. + + + + + Corresponds to the PostgreSQL "array" type, a variable-length multidimensional array of + another type. This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Array | NpgsqlDbType.Integer) + + See https://www.postgresql.org/docs/current/static/arrays.html + + + + Corresponds to the PostgreSQL "range" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Range | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 9.2. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Corresponds to the PostgreSQL "multirange" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Multirange | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 14. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + Can return null when a custom range type is used. + + + Can return null when a plugin type or custom range type is used. + + + Should not be used with display names, first normalize it instead. + + + + A raw representation of the PostgreSQL interval datatype. Use only when or NodaTime + Period do not have sufficient range to handle your values. + + +

+ See https://www.postgresql.org/docs/current/static/datatype-geometric.html. +

+

+ Do not use this type unless you have to: prefer or NodaTime + Period when possible. +

+
+
+ + + Constructs an . + + + + + Months and years, after time for alignment. + + + + + Days, after time for alignment. + + + + + Remaining time unit smaller than a day, in microseconds. + + + + + + + + + + + + + + Wraps a PostgreSQL Write-Ahead Log Sequence Number (see: https://www.postgresql.org/docs/current/datatype-pg-lsn.html) + + + Log Sequence Numbers are a fundamental concept of the PostgreSQL Write-Ahead Log and by that of + PostgreSQL replication. See https://www.postgresql.org/docs/current/wal-internals.html for what they represent. + + This struct provides conversions from/to and and beyond that tries to port + the methods and operators in https://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/utils/adt/pg_lsn.c + but nothing more. + + + + + Zero is used indicate an invalid Log Sequence Number. No XLOG record can begin at zero. + + + + + Initializes a new instance of . + + The value to wrap. + + + + Returns a value indicating whether this instance is equal to a specified + instance. + + A instance to compare to this instance. + if the current instance is equal to the value parameter; + otherwise, . + + + + Compares this instance to a specified and returns an indication of their + relative values. + + A instance to compare to this instance. + A signed number indicating the relative values of this instance and . + + + + Returns a value indicating whether this instance is equal to a specified object. + + An object to compare to this instance + if the current instance is equal to the value parameter; + otherwise, . + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Converts the numeric value of this instance to its equivalent string representation. + + The string representation of the value of this instance, consisting of two hexadecimal numbers of + up to 8 digits each, separated by a slash + + + + Converts the string representation of a Log Sequence Number to a instance. + + A string that represents the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + The parameter is . + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Converts the span representation of a Log Sequence Number to a instance. + + A span containing the characters that represent the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Tries to convert the string representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A string that represents the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is or , is not in the right format, or represents a number + less than or greater than . This parameter is + passed uninitialized; any value originally supplied in result will be overwritten. + + + if c> was converted successfully; otherwise, . + + + + + Tries to convert the span representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A span containing the characters that represent the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is empty, is not in the right format, or represents a number less than + or greater than . This parameter is passed + uninitialized; any value originally supplied in result will be overwritten. + + + if was converted successfully; otherwise, . + + + + Converts the value of a 64-bit unsigned integer to a instance. + + A 64-bit unsigned integer. + A new instance of initialized to . + + + + Converts the value of a instance to a 64-bit unsigned integer value. + + A instance + The contents of as 64-bit unsigned integer. + + + + Returns a value that indicates whether two specified instances of are equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if equals ; otherwise, . + + + + + Returns a value that indicates whether two specified instances of are not + equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if does not equal ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than + another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is less than + another specified instance. + + The first value to compare. + The second value to compare. + + if is less than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than or equal to ; + otherwise, . + + + + + Returns the larger of two values. + + The first value to compare. + The second value to compare. + + The larger of the two values. + + + + + Returns the smaller of two values. + + The first value to compare. + The second value to compare. + + The smaller of the two values. + + + + + Returns a value indicating whether a specified instance is less than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is less than or equal to ; + otherwise, . + + + + + Subtracts two specified values. + + The first value. + The second value. + The number of bytes separating those write-ahead log locations. + + + + Subtract the number of bytes from a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to subtract. + A new instance. + + The resulting instance would represent a number less than + . + + + + + Add the number of bytes to a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to add. + A new instance. + + The resulting instance would represent a number greater than + . + + + + + Represents a PostgreSQL range type. + + The element type of the values in the range. + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Defined by PostgreSQL to represent an empty range. + + + + + Defined by PostgreSQL to represent an infinite lower bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an infinite upper bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an null bound. + Some element types may have specific handling for this value distinct from an infinite or missing value. + + + + + Defined by PostgreSQL to represent a lower inclusive bound. + + + + + Defined by PostgreSQL to represent a lower exclusive bound. + + + + + Defined by PostgreSQL to represent an upper inclusive bound. + + + + + Defined by PostgreSQL to represent an upper exclusive bound. + + + + + Defined by PostgreSQL to separate the values for the upper and lower bounds. + + + + + The used by to convert bounds into . + + + + + True if implements ; otherwise, false. + + + + + Represents the empty range. This field is read-only. + + + + + The lower bound of the range. Only valid when is false. + + + + + The upper bound of the range. Only valid when is false. + + + + + The characteristics of the boundaries. + + + + + True if the lower bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the range is empty; otherwise, false. + + + + + Constructs an with inclusive and definite bounds. + + The lower bound of the range. + The upper bound of the range. + + + + Constructs an with definite bounds. + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + + + Attempts to determine if the range is malformed or implicitly empty. + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + True if the range is implicitly empty; otherwise, false. + + + + + Evaluates the boundary flags. + + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + The boundary characteristics. + + + + + Indicates whether the on the left is equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is equal to the on the right; otherwise, false. + + + + + Indicates whether the on the left is not equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is not equal to the on the right; otherwise, false. + + + + + + + + + + + + + + + + + Parses the well-known text representation of a PostgreSQL range type into a . + + A PosgreSQL range type in a well-known text format. + + The represented by the . + + + Malformed range literal. + + + Malformed range literal. Missing left parenthesis or bracket. + + + Malformed range literal. Missing right parenthesis or bracket. + + + Malformed range literal. Missing comma after lower bound. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Represents a type converter for . + + + + + Adds a to the closed form . + + + + + + + + + + + + + + + + + Represents characteristics of range type boundaries. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + The default flag. The range is not empty and has boundaries that are definite and exclusive. + + + + + The range is empty. E.g. '(0,0)', 'empty'. + + + + + The lower bound is inclusive. E.g. '[0,5]', '[0,5)', '[0,)'. + + + + + The upper bound is inclusive. E.g. '[0,5]', '(0,5]', '(,5]'. + + + + + The lower bound is infinite or indefinite. E.g. '(null,5]', '(-infinity,5]', '(,5]'. + + + + + The upper bound is infinite or indefinite. E.g. '[0,null)', '[0,infinity)', '[0,)'. + + + + + Both the lower and upper bounds are inclusive. + + + + + Both the lower and upper bounds are indefinite. + + + + + The lower bound is both inclusive and indefinite. This represents an error condition. + + + + + The upper bound is both inclusive and indefinite. This represents an error condition. + + + + + Represents a PostgreSQL tsquery. This is the base class for the + lexeme, not, or, and, and "followed by" nodes. + + + + + Node kind + + + + + NodeKind + + + + + Represents the empty tsquery. Should only be used at top level. + + + + + Lexeme + + + + + Not operator + + + + + And operator + + + + + Or operator + + + + + "Followed by" operator + + + + + Constructs an . + + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Parses a tsquery in PostgreSQL's text format. + + + + + + + + + + + + + Returns a value indicating whether this instance and a specified object represent the same value. + + An object to compare to this instance. + if g is equal to this instance; otherwise, . + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + if and are equal; otherwise, . + + + + Indicates whether the values of two specified objects are not equal. + + The first object to compare. + The second object to compare. + if and are not equal; otherwise, . + + + + TsQuery Lexeme node. + + + + + Lexeme text. + + + + + Weights is a bitmask of the Weight enum. + + + + + Prefix search. + + + + + Creates a tsquery lexeme with only lexeme text. + + Lexeme text. + + + + Creates a tsquery lexeme with lexeme text and weights. + + Lexeme text. + Bitmask of enum Weight. + + + + Creates a tsquery lexeme with lexeme text, weights and prefix search flag. + + Lexeme text. + Bitmask of enum Weight. + Is prefix search? + + + + Weight enum, can be OR'ed together. + + + + + None + + + + + D + + + + + C + + + + + B + + + + + A + + + + + + + + + + + TsQuery Not node. + + + + + Child node + + + + + Creates a not operator, with a given child node. + + + + + + + + + + + + Base class for TsQuery binary operators (& and |). + + + + + Left child + + + + + Right child + + + + + Constructs a . + + + + + TsQuery And node. + + + + + Creates an and operator, with two given child nodes. + + + + + + + + + + + + + TsQuery Or Node. + + + + + Creates an or operator, with two given child nodes. + + + + + + + + + + + + + TsQuery "Followed by" Node. + + + + + The distance between the 2 nodes, in lexemes. + + + + + Creates a "followed by" operator, specifying 2 child nodes and the + distance between them in lexemes. + + + + + + + + + + + + + + Represents an empty tsquery. Shold only be used as top node. + + + + + Creates a tsquery that represents an empty query. Should not be used as child node. + + + + + + + + + + + Represents a PostgreSQL tsvector. + + + + + Parses a tsvector in PostgreSQL's text format. + + + + + + + Returns the lexeme at a specific index + + + + + + + Gets the number of lexemes. + + + + + Returns an enumerator. + + + + + + Returns an enumerator. + + + + + + Gets a string representation in PostgreSQL's format. + + + + + + + + + + + + + + + Represents a lexeme. A lexeme consists of a text string and optional word entry positions. + + + + + Gets or sets the text. + + + + + Creates a lexeme with no word entry positions. + + + + + + Creates a lexeme with word entry positions. + + + + + + + Gets a word entry position. + + + + + + + Gets the number of word entry positions. + + + + + Creates a string representation in PostgreSQL's format. + + + + + + Represents a word entry position and an optional weight. + + + + + Creates a WordEntryPos with a given position and weight. + + Position values can range from 1 to 16383; larger numbers are silently set to 16383. + A weight labeled between A and D. + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + The position is a 14-bit unsigned integer indicating the position in the text this lexeme occurs. Cannot be 0. + + + + + Prints this lexeme in PostgreSQL's format, i.e. position is followed by weight (weight is only printed if A, B or C). + + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + D, the default + + + + + C + + + + + B + + + + + A + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + Represents a PostgreSQL point type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL line type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Line Segment type. + + + + + Represents a PostgreSQL box type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Path type. + + + + + Represents a PostgreSQL Polygon type. + + + + + Represents a PostgreSQL Circle type. + + + + + Represents a PostgreSQL inet type, which is a combination of an IPAddress and a subnet mask. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL cidr type. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL tid value + + + https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + + Block number + + + + + Tuple index within block + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + + + + The name of PostgreSQL field that corresponds to this CLR property or field + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + The name of PostgreSQL field that corresponds to this CLR property or field + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + +
+
diff --git a/packages/Npgsql.8.0.3/lib/net7.0/Npgsql.dll b/packages/Npgsql.8.0.3/lib/net7.0/Npgsql.dll new file mode 100644 index 0000000..e52143f Binary files /dev/null and b/packages/Npgsql.8.0.3/lib/net7.0/Npgsql.dll differ diff --git a/packages/Npgsql.8.0.3/lib/net7.0/Npgsql.xml b/packages/Npgsql.8.0.3/lib/net7.0/Npgsql.xml new file mode 100644 index 0000000..a3db272 --- /dev/null +++ b/packages/Npgsql.8.0.3/lib/net7.0/Npgsql.xml @@ -0,0 +1,11431 @@ + + + + Npgsql + + + + Indicates that an API is experimental and it may change in the future. + + + Initializes a new instance of the class, specifying the ID that the compiler will use when reporting a use of the API the attribute applies to. + The ID that the compiler will use when reporting a use of the API the attribute applies to. + + + Gets the ID that the compiler will use when reporting a use of the API the attribute applies to. + The unique diagnostic ID. + + + Gets or sets the URL for corresponding documentation. + The API accepts a format string instead of an actual URL, creating a generic URL that includes the diagnostic ID. + The format string that represents a URL to corresponding documentation. + + + + Note that this message doesn't actually contain the data, but only the length. Data is processed + directly from the connector's buffer. + + + + + DataRow is special in that it does not parse the actual contents of the backend message, + because in sequential mode the message will be traversed and processed sequentially by + . + + + + + Error and notice message field codes + + + + + A RowDescription message sent from the backend. + + + See https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + A descriptive record on a single field received from PostgreSQL. + See RowDescription in https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + The field name. + + + + + The object ID of the field's data type. + + + + + The data type size (see pg_type.typlen). Note that negative values denote variable-width types. + + + + + The type modifier (see pg_attribute.atttypmod). The meaning of the modifier is type-specific. + + + + + If the field can be identified as a column of a specific table, the object ID of the table; otherwise zero. + + + + + If the field can be identified as a column of a specific table, the attribute number of the column; otherwise zero. + + + + + The format code being used for the field. + Currently will be text or binary. + In a RowDescription returned from the statement variant of Describe, the format code is not yet known and will always be zero. + + + + + Returns a string that represents the current object. + + + + + Base class for all classes which represent a message sent by the PostgreSQL backend. + + + + + Specifies the type of SQL statement, e.g. SELECT + + + + Streaming + + + Entire value should be buffered + + + Fixed size value should be buffered + + + Custom requirements + + + + CompositeFieldInfo constructor. + + Name of the field. + Type info for reading/writing. + The nominal field type, this may differ from the typeInfo.PgTypeId when the field is a domain type. + + + + Create temporary storage for all values that come before the constructor parameters can be saturated. + + + + + A reference to the type that houses the static method points to. + The continuation + + + A reference to the type that houses the static method points to. + The continuation + + + Note that for BIT(1), this resolver will return a bool by default, to align with SqlClient + (see discussion https://github.com/npgsql/npgsql/pull/362#issuecomment-59622101). + + + A converter to map strongly typed apis onto boxed converter results to produce a strongly typed converter over T. + + + Special value converter to be able to use struct converters as System.Nullable converters, it delegates all behavior to the effective converter. + + + Big endian array of numeric digits + + + + + + + If the destination ends up being too small the builder allocates instead + + + + + + + + + Whether the input consists of any non zero bits + + + Adapted from BigInteger, to allow us to operate directly on stack allocated bits + + + + Hacky temporary measure used by EFCore.PG to extract user-configured enum mappings. Accessed via reflection only. + + + + + A factory which get generate instances of , which describe a database + and the types it contains. When first connecting to a database, Npgsql will attempt to load information + about it via this factory. + + + + + Given a connection, loads all necessary information about the connected database, e.g. its types. + A factory should only handle the exact database type it was meant for, and return null otherwise. + + + An object describing the database to which is connected, or null if the + database isn't of the correct type and isn't handled by this factory. + + + + + An Npgsql resolver for type info. Used by Npgsql to read and write values to PostgreSQL. + + + + + Resolve a type info for a given type and data type name, at least one value will be non-null. + + The clr type being requested. + The postgres type being requested. + Used for configuration state and Npgsql type info or PostgreSQL type catalog lookups. + A result, or null if there was no match. + + + + Represents a connection to a PostgreSQL backend. Unlike NpgsqlConnection objects, which are + exposed to users, connectors are internal to Npgsql and are recycled by the connection pool. + + + + + The physical connection socket to the backend. + + + + + The physical connection stream to the backend, without anything on top. + + + + + The physical connection stream to the backend, layered with an SSL/TLS stream if in secure mode. + + + + + The parsed connection string. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + Buffer used for reading data. + + + + + If we read a data row that's bigger than , we allocate an oversize buffer. + The original (smaller) buffer is stored here, and restored when the connection is reset. + + + + + Buffer used for writing data. + + + + + The secret key of the backend for this connector, used for query cancellation. + + + + + The process ID of the backend for this connector. + + + + + The user name that has been inferred when the connector was opened + + + + + A unique ID identifying this connector, used for logging. Currently mapped to BackendProcessId + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + The current transaction status for this connector. + + + + + A transaction object for this connector. Since only one transaction can be in progress at any given time, + this instance is recycled. To check whether a transaction is currently in progress on this connector, + see . + + + + + The NpgsqlConnection that (currently) owns this connector. Null if the connector isn't + owned (i.e. idle in the pool) + + + + + The number of messages that were prepended to the current message chain, but not yet sent. + Note that this only tracks messages which produce a ReadyForQuery message + + + + + A ManualResetEventSlim used to make sure a cancellation request doesn't run + while we're reading responses for the prepended query + as we can't gracefully handle their cancellation. + + + + + If the connector is currently in COPY mode, holds a reference to the importer/exporter object. + Otherwise null. + + + + + Holds all run-time parameters received from the backend (via ParameterStatus messages) + + + + + Holds all run-time parameters in raw, binary format for efficient handling without allocations. + + + + + If this connector was broken, this contains the exception that caused the break. + + + + + + Used by the pool to indicate that I/O is currently in progress on this connector, so that another write + isn't started concurrently. Note that since we have only one write loop, this is only ever usedto + protect against an over-capacity writes into a connector that's currently *asynchronously* writing. + + + It is guaranteed that the currently-executing + Specifically, reading may occur - and the connector may even be returned to the pool - before this is + released. + + + + + + + + + + + + A lock that's taken while a cancellation is being delivered; new queries are blocked until the + cancellation is delivered. This reduces the chance that a cancellation meant for a previous + command will accidentally cancel a later one, see #615. + + + + + A lock that's taken to make sure no other concurrent operation is running. + Break takes it to set the state of the connector. + Anyone else should immediately check the state and exit + if the connector is closed. + + + + + A lock that's used to wait for the Cleanup to complete while breaking the connection. + + + + + The command currently being executed by the connector, null otherwise. + Used only for concurrent use error reporting purposes. + + + + + The connector source (e.g. pool) from where this connector came, and to which it will be returned. + Note that in multi-host scenarios, this references the host-specific rather than the + . + + + + + Contains the UTC timestamp when this connector was opened, used to implement + . + + + + + The minimum timeout that can be set on internal commands such as COMMIT, ROLLBACK. + + Precision is seconds + + + + Gets the current state of the connector + + + + + Returns whether the connector is open, regardless of any task it is currently performing + + + + + Opens the physical connection to the server. + + Usually called by the RequestConnector + Method of the connection pool manager. + + + + Prepends a message to be sent at the beginning of the next message chain. + + + + + Reads backend messages and discards them, stopping only after a message of the given type has + been seen. Only a sync I/O version of this method exists - in async flows we inline the loop + rather than calling an additional async method, in order to avoid the overhead. + + + + + Handles a new transaction indicator received on a ReadyForQuery message + + + + + Returns whether SSL is being used for the connection + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Creates another connector and sends a cancel request through it for this connector. This method never throws, but returns + whether the cancellation attempt failed. + + + + if the cancellation request was successfully delivered, or if it was skipped because a previous + request was already sent. if the cancellation request could not be delivered because of an exception + (the method logs internally). + + + This does not indicate whether the cancellation attempt was successful on the PostgreSQL side - only if the request was + delivered. + + + + + + Starts a new cancellable operation within an ongoing user action. This should only be used if a single user + action spans several different actions which each has its own cancellation tokens. For example, a command + execution is a single user action, but spans ExecuteReaderQuery, NextResult, Read and so forth. + + + Only one level of nested operations is supported. It is an error to call this method if it has previously + been called, and the returned was not disposed. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the + cancellation, and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or + a timeout occurs, followed by a client-side socket cancellation once + has elapsed. If , + PostgreSQL cancellation will be skipped and client-socket cancellation will occur immediately. + + + + + Closes ongoing operations, i.e. an open reader exists or a COPY operation still in progress, as + part of a connection close. + + + + + Called when an unexpected message has been received during an action. Breaks the + connector and returns the appropriate message. + + + + + Called when a connector becomes completely unusable, e.g. when an unexpected I/O exception is raised or when + we lose protocol sync. + Note that fatal errors during the Open phase do *not* pass through here. + + The exception that caused the break. + The exception given in for chaining calls. + + + + Closes the socket and cleans up client-side resources associated with this connector. + + + This method doesn't actually perform any meaningful I/O, and therefore is sync-only. + + + + + Called when a pooled connection is closed, and its connector is returned to the pool. + Resets the connector back to its initial state, releasing server-side sources + (e.g. prepared statements), resetting parameters to their defaults, and resetting client-side + state + + + + + The connector may have allocated an oversize read buffer, to hold big rows in non-sequential reading. + This switches us back to the original one and returns the buffer to . + + + + + Starts a user action. This makes sure that another action isn't already in progress, handles synchronization with keepalive, + and sets up cancellation. + + The new state to be set when entering this user action. + + The that is starting execution - if an is + thrown, it will reference this. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the cancellation, + and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or a timeout + occurs, followed by a client-side socket cancellation once has + elapsed. If , PostgreSQL cancellation will be skipped and client-socket cancellation will occur + immediately. + + + + + An IDisposable wrapper around . + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Creates and returns a object associated with the . + + The text of the query. + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + Expresses the exact state of a connector. + + + + + The connector has either not yet been opened or has been closed. + + + + + The connector is currently connecting to a PostgreSQL server. + + + + + The connector is connected and may be used to send a new query. + + + + + The connector is waiting for a response to a query which has been sent to the server. + + + + + The connector is currently fetching and processing query results. + + + + + The connector is currently waiting for asynchronous notifications to arrive. + + + + + The connection was broken because an unexpected error occurred which left it in an unknown state. + This state isn't implemented yet. + + + + + The connector is engaged in a COPY operation. + + + + + The connector is engaged in streaming replication. + + + + + Currently not in a transaction block + + + + + Currently in a transaction block + + + + + Currently in a failed transaction block (queries will be rejected until block is ended) + + + + + A new transaction has been requested but not yet transmitted to the backend. It will be transmitted + prepended to the next query. + This is a client-side state option only, and is never transmitted from the backend. + + + + + Specifies how to load/parse DataRow messages as they're received from the backend. + + + + + Load DataRows in non-sequential mode + + + + + Load DataRows in sequential mode + + + + + Skip DataRow messages altogether + + + + + Base class for implementations which provide information about PostgreSQL and PostgreSQL-like databases + (e.g. type definitions, capabilities...). + + + + + The hostname of IP address of the database. + + + + + The TCP port of the database. + + + + + The database name. + + + + + The version of the PostgreSQL database we're connected to, as reported in the "server_version" parameter. + Exposed via . + + + + + The PostgreSQL version string as returned by the server_version option. Populated during loading. + + + + + Whether the backend supports range types. + + + + + Whether the backend supports multirange types. + + + + + Whether the backend supports enum types. + + + + + Whether the backend supports the CLOSE ALL statement. + + + + + Whether the backend supports advisory locks. + + + + + Whether the backend supports the DISCARD SEQUENCES statement. + + + + + Whether the backend supports the UNLISTEN statement. + + + + + Whether the backend supports the DISCARD TEMP statement. + + + + + Whether the backend supports the DISCARD statement. + + + + + Reports whether the backend uses the newer integer timestamp representation. + + + + + Whether the database supports transactions. + + + + + Indexes backend types by their type OID. + + + + + Indexes backend types by their PostgreSQL internal name, including namespace (e.g. pg_catalog.int4). + Only used for enums and composites. + + + + + Indexes backend types by their PostgreSQL name, not including namespace. + If more than one type exists with the same name (i.e. in different namespaces) this + table will contain an entry with a null value. + Only used for enums and composites. + + + + + Initializes the instance of . + + + + + Initializes the instance of . + + + + + Provides all PostgreSQL types detected in this database. + + + + + + Parses a PostgreSQL server version (e.g. 10.1, 9.6.3) and returns a CLR Version. + + + + + Registers a new database info factory, which is used to load information about databases. + + + + + A buffer used by Npgsql to read data from the socket efficiently. + Provides methods which decode different values types and tracks the current position. + + + + + Timeout for sync and async reads + + + + + The total byte length of the buffer. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + The minimum buffer size possible. + + + + + Ensures that bytes are available in the buffer, and if + not, reads from the socket until enough is available. + + + + + Does not perform any I/O - assuming that the bytes to be skipped are in the memory buffer. + + + + + Skip a given number of bytes. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. If any character could not be decoded, a question + mark character is returned instead of throwing an exception. + + + + + Seeks the first null terminator (\0) and returns the string up to it. Reads additional data from the network if a null + terminator isn't found in the buffered data. + + + + Does not throw ODE. + + + + A buffer used by Npgsql to write data to the socket efficiently. + Provides methods which encode different values types and tracks the current position. + + + + + Timeout for sync and async writes + + + + + The total byte length of the buffer. + + + + + The minimum buffer size possible. + + + + + Returns all contents currently written to the buffer (but not flushed). + Useful for pre-generating messages. + + + + + Whether this converter can handle the given format and with which buffer requirements. + + The data format. + Returns the buffer requirements. + Returns true if the given data format is supported. + The buffer requirements should not cover database NULL reads or writes, these are handled by the caller. + + + Never DbNull (struct types) + + + DbNull when *user code* + + + DbNull when value is null + + + DbNull when value is null or DBNull + + + + Gets the appropriate converter solely based on PgTypeId. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to read with based on the given field info. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to write with based on the given value. + + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are + cached once used. Array or other collection converters depend on this to cache their own converter - which wraps the element + converter - with the cache key being the element converter reference. + + + + ReadBytes without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + ReadBytesAsync without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + + + + + The stream length, if any + + + + Used by GetSchema to be able to attempt to resolve all type catalog types without exceptions. + + + + Whether options should return a portable identifier (data type name) to prevent any generated id (oid) confusion across backends, this comes with a perf penalty. + + + A reference to the type that houses the static method points to. + The continuation + + + Throws if the instance is a PgResolverTypeInfo. + + + When result is null, the value was interpreted to be a SQL NULL. + + + When result is null or DBNull, the value was interpreted to be a SQL NULL. + + + Whether Converter.TypeToConvert matches PgTypeInfo.Type, if it doesn't object apis should be used. + + + + Gets a that can be used to write to the underlying buffer. + + Blocking flushes during writes that were expected to be non-blocking and vice versa cause an exception to be thrown unless allowMixedIO is set to true, false by default. + The stream. + + + + Represents the fully-qualified name of a PostgreSQL type. + + + + + The maximum length of names in an unmodified PostgreSQL installation. + + + We need to respect this to get to valid names when deriving them (for multirange/arrays etc). + This does not include the namespace. + + + + + Well-known PostgreSQL data type names. + + + + Base field type shared between tables and composites. + + + + A discriminated union of and . + + + + + + + + + + When this flag is true, and both type and pgTypeId are non null, a default info for the pgTypeId can be returned if an exact match + can't be found. + + + + + + + + + + + + Signals whether a resolver based TypeInfo can keep its PgTypeId undecided or whether it should follow mapping.DataTypeName. + + + + Match when the clr type and datatype name both match. + It's also the only requirement that participates in clr type fallback matching. + + + Match when the datatype name or CLR type matches while the other also matches or is absent. + + + Match when the datatype name matches and the clr type also matches or is absent. + + + A factory for well-known PgConverters. + + + Returns the first default converter or the first converter that matches both type and dataTypeName. + If just a type was passed and no default was found we return the first converter with a type match. + + + Returns whether type matches any of the types we register pg arrays as. + + + + Launches MIT Kerberos klist and parses out the default principal from it. + Caches the result. + + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A component which translates a CLR name (e.g. SomeClass) into a database name (e.g. some_class) + according to some scheme. + Used for mapping enum and composite types. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which preserves CLR names (e.g. SomeClass) when mapping names to the database. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which converts standard CLR names (e.g. SomeClass) to snake-case database + names (some_class) + + + + + Creates a new . + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Creates a new . + + + Uses the legacy naming convention if , otherwise it uses the new naming convention. + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + Converts a string to its snake_case equivalent. + + The value to convert. + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Controls whether to place error barriers between all batch commands within this batch. Default to . + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Enabling error barriers ensures that errors do not affect other commands in the batch. + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message between each command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + To control error barriers on a command-by-command basis, see . + + + + + + Marks all of the batch's result columns as either known or unknown. + Unknown results column are requested them from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Initializes a new . + + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of a object. + + An object. + + + + Returns whether the method is implemented. + + + + + Appends an error barrier after this batch command. Defaults to the value of on the + batch. + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Appending an error barrier ensures that errors from this command (or previous ones) won't cause later commands to be skipped, + and that errors from later commands won't cause this command (or previous ones) to be rolled back). + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message after this command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + Controlling error barriers on a command-by-command basis is an advanced feature, consider enabling error barriers for the entire + batch via . + + + + + + The number of rows affected or retrieved. + + + See the command tag in the CommandComplete message for the meaning of this value for each , + https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + + + + Specifies the type of query, e.g. SELECT. + + + + + For an INSERT, the object ID of the inserted row if is 1 and + the target table has OIDs; otherwise 0. + + + + + The SQL as it will be sent to PostgreSQL, after any rewriting performed by Npgsql (e.g. named to positional parameter + placeholders). + + + + + The list of parameters, ordered positionally, as it will be sent to PostgreSQL. + + + If the user provided positional parameters, this references the (in batching mode) or the list + backing (in non-batching) mode. If the user provided named parameters, this is a + separate list containing the re-ordered parameters. + + + + + The RowDescription message for this query. If null, the query does not return rows (e.g. INSERT) + + + + + If this statement has been automatically prepared, references the . + Null otherwise. + + + + + Holds the server-side (prepared) ASCII statement name. Empty string for non-prepared statements. + + + + + Whether this statement has already been prepared (including automatic preparation). + + + + + Returns a prepared statement for this statement (including automatic preparation). + + + + + Initializes a new . + + + + + Initializes a new . + + The text of the . + + + + Returns the . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides an API for a binary COPY TO operation, a high-performance data export mechanism from + a PostgreSQL table. Initiated by + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be read. + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be read. + The value of the column + + + + Returns whether the current column is null. + + + + + Skips the current column without interpreting its value. + + + + + Skips the current column without interpreting its value. + + + + + Cancels an ongoing export. + + + + + Async cancels an ongoing export. + + + + + Completes that binary export and sets the connection back to idle state + + + + + Async completes that binary export and sets the connection back to idle state + + + + + + Provides an API for a binary COPY FROM operation, a high-performance data import mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The number of columns in the current (not-yet-written) row. + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Writes a single column in the current row. + + The value to be written + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row. + + The value to be written + + An optional token to cancel the asynchronous operation. The default value is . + + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single null column value. + + + + + Writes a single null column value. + + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + An array of column values to be written as a single row + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + + An optional token to cancel the asynchronous operation. The default value is . + + An array of column values to be written as a single row + + + + Completes the import operation. The writer is unusable after this operation. + + + + + Completes the import operation. The writer is unusable after this operation. + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + Represents a SQL statement or function (stored procedure) to execute + against a PostgreSQL database. This class cannot be inherited. + + + + + If this command is (explicitly) prepared, references the connector on which the preparation happened. + Used to detect when the connector was changed (i.e. connection open/close), meaning that the command + is no longer prepared. + + + + + Whether this is wrapped by an . + + + + + Returns details about each statement that this command has executed. + Is only populated when an Execute* method is called. + + + + + Whether this command is cached by and returned by . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the text of the query. + + The text of the query. + + + + Initializes a new instance of the class with the text of the query and a + . + + The text of the query. + A that represents the connection to a PostgreSQL server. + + + + Initializes a new instance of the class with the text of the query, a + , and the . + + The text of the query. + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + Used when this instance is wrapped inside an . + + + + + Used when this instance is wrapped inside an . + + + + + Gets or sets the SQL statement or function (stored procedure) to execute at the data source. + + The SQL statement or function (stored procedure) to execute. The default is an empty string. + + + + Gets or sets the wait time (in seconds) before terminating the attempt to execute a command and generating an error. + + The time (in seconds) to wait for the command to execute. The default value is 30 seconds. + + + + Gets or sets a value indicating how the property is to be interpreted. + + + One of the values. The default is . + + + + + DB connection. + + + + + Gets or sets the used by this instance of the . + + The connection to a data source. The default value is . + + + + Design time visible. + + + + + Gets or sets how command results are applied to the DataRow when used by the + DbDataAdapter.Update(DataSet) method. + + One of the values. + + + + Returns whether this query will execute as a prepared (compiled) query. + + + + + Marks all of the query's result columns as either known or unknown. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Marks the query's result columns as known or unknown, on a column-by-column basis. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + If the query includes several queries (e.g. SELECT 1; SELECT 2), this will only apply to the first + one. The rest of the queries will be fetched and parsed as usual. + + The array size must correspond exactly to the number of result columns the query returns, or an + error will be raised. + + + + + The current state of the command + + + + + Creates a new instance of an object. + + A object. + + + + Creates a new instance of a object. + + An object. + + + + DB parameter collection. + + + + + Gets the . + + The parameters of the SQL statement or function (stored procedure). The default is an empty collection. + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Executes a SQL statement against the connection and returns the number of rows affected. + + The number of rows affected if known; -1 otherwise. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the number of rows affected if known; -1 otherwise. + + + + Executes the query, and returns the first column of the first row + in the result set returned by the query. Extra columns or rows are ignored. + + The first column of the first row in the result set, + or a null reference if the result set is empty. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the first column of the + first row in the result set, or a null reference if the result set is empty. + + + + Executes the command text against the connection. + + A task representing the operation. + + + + Executes the command text against the connection. + + An instance of . + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + A task representing the operation. + + + + An asynchronous version of , which executes + the against the + and returns a . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + An asynchronous version of , + which executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + DB transaction. + + + + + This property is ignored by Npgsql. PostgreSQL only supports a single transaction at a given time on + a given connection, and all commands implicitly run inside the current transaction started via + + + + + + Attempts to cancel the execution of an . + + As per the specs, no exception will be thrown by this method in case of failure. + + + + + + + Fixes up the text/binary flag on result columns. + Since Prepare() describes a statement rather than a portal, the resulting RowDescription + will have text format on all result columns. Fix that up. + + + Note that UnknownResultTypeList only applies to the first query, while AllResultTypesAreUnknown applies + to all of them. + + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + This event is unsupported by Npgsql. Use instead. + + + + + This class creates database commands for automatic insert, update and delete operations. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The adapter. + + + + Gets or sets the beginning character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The beginning character or characters to use. The default is an empty string. + + + + + + + + Gets or sets the ending character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The ending character or characters to use. The default is an empty string. + + + + + + + + + This method is responsible to derive the command parameter list with values obtained from function definition. + It clears the Parameters collection of command. Also, if there is any parameter type which is not supported by Npgsql, an InvalidOperationException will be thrown. + Parameters name will be parameter1, parameter2, ... for CommandType.StoredProcedure and named after the placeholder for CommandType.Text + + NpgsqlCommand whose function parameters will be obtained. + + + + Gets the automatically generated object required + to perform insertions at the data source. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated object required to perform insertions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform updates at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform updates. + + + + + Gets the automatically generated object required to perform updates + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform updates. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform deletions at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform deletions. + + + + + Gets the automatically generated object required to perform deletions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform deletions. + + + + + Applies the parameter information. + + The parameter. + The row. + Type of the statement. + If set to [where clause]. + + + + Returns the name of the specified parameter in the format of @p#. + + The number to be included as part of the parameter's name.. + + The name of the parameter with the specified number appended as part of the parameter name. + + + + + Returns the full parameter name, given the partial parameter name. + + The partial name of the parameter. + + The full parameter name corresponding to the partial parameter name requested. + + + + + Returns the placeholder for the parameter in the associated SQL statement. + + The number to be included as part of the parameter's name. + + The name of the parameter with the specified number appended. + + + + + Registers the to handle the event for a . + + The to be used for the update. + + + + Adds an event handler for the event. + + The sender + A instance containing information about the event. + + + + Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier, including properly escaping any embedded quotes in the identifier. + + The original unquoted identifier. + + The quoted version of the identifier. Embedded quotes within the identifier are properly escaped. + + + + + Unquoted identifier parameter cannot be null + + + + Given a quoted identifier, returns the correct unquoted form of that identifier, including properly un-escaping any embedded quotes in the identifier. + + The identifier that will have its embedded quotes removed. + + The unquoted identifier, with embedded quotes properly un-escaped. + + + + + Quoted identifier parameter cannot be null + + + + This class represents a connection to a PostgreSQL server. + + + + + The connection string, without the password after open (unless Persist Security Info=true) + + + + + The original connection string provided by the user, including the password. + + + + + The physical connection to the database. This is when the connection is closed, + and also when it is open in multiplexing mode and unbound (e.g. not in a transaction). + + + + + The parsed connection string. Set only after the connection is opened. + + + + + Flag used to make sure we never double-close a connection, returning it twice to the pool. + + + + + The global type mapper, which contains defaults used by all new connections. + Modify mappings on this mapper to affect your entire application. + + + + + Connection-level type mapping is no longer supported. See the 7.0 release notes for configuring type mapping on NpgsqlDataSource. + + + + + The default TCP/IP port for PostgreSQL. + + + + + Maximum value for connection timeout. + + + + + Tracks when this connection was bound to a physical connector (e.g. at open-time, when a transaction + was started...). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Opens a database connection with the property settings specified by the . + + + + + This is the asynchronous version of . + + + Do not invoke other methods and properties of the object until the returned Task is complete. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + The connection string that includes the server name, + the database name, and other parameters needed to establish + the initial connection. The default value is an empty string. + + + + + Gets or sets the delegate used to generate a password for new database connections. + + +

+ This delegate is executed when a new database connection is opened that requires a password. +

+

+ The and connection + string properties have precedence over this delegate: it will not be executed if a password is specified, or if the specified or + default Passfile contains a valid entry. +

+

+ Due to connection pooling this delegate is only executed when a new physical connection is opened, not when reusing a connection + that was previously opened from the pool. +

+
+
+ + + Backend server host name. + + + + + Backend server port. + + + + + Gets the time (in seconds) to wait while trying to establish a connection + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a connection to open. The default value is 15 seconds. + + + + Gets the time (in seconds) to wait while trying to execute a command + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a command to complete. The default value is 30 seconds. + + + + Gets the name of the current database or the database to be used after a connection is opened. + + The name of the current database or the name of the database to be + used after a connection is opened. The default value is the empty string. + + + + Gets the string identifying the database server (host and port) + + + The name of the database server (host and port). If the connection uses a Unix-domain socket, + the path to that socket is returned. The default value is the empty string. + + + + + User name. + + + + + Gets the current state of the connection. + + A bitwise combination of the values. The default is Closed. + + + + Gets whether the current state of the connection is Open or Closed + + ConnectionState.Open, ConnectionState.Closed or ConnectionState.Connecting + + + + A cached command handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + Creates and returns a + object associated with the . + + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + A cached batch handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + + + + + + + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Begins a database transaction. + + A object representing the new transaction. + + Nested transactions are not supported. + Transactions created by this method will have the isolation level. + + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Asynchronously begins a database transaction. + + The isolation level under which the transaction should run. + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose property is an object representing the new transaction. + + Nested transactions are not supported. + + + + + Asynchronously begins a database transaction. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose Result property is an object representing the new transaction. + + Nested transactions are not supported. + Transactions created by this method will have the isolation level. + + + + + Asynchronously begins a database transaction. + + The isolation level under which the transaction should run. + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose property is an object representing the new transaction. + + Nested transactions are not supported. + + + + + Enlist transaction. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases all resources used by the . + + when called from ; + when being called from the finalizer. + + + + Releases all resources used by the . + + + + + Fires when PostgreSQL notices are received from PostgreSQL. + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + Note that notices are very different from notifications (see the event). + + + + + Fires when PostgreSQL notifications are received from PostgreSQL. + + + PostgreSQL notifications are sent when your connection has registered for notifications on a specific channel via the + LISTEN command. NOTIFY can be used to generate such notifications, allowing for an inter-connection communication channel. + + Note that notifications are very different from notices (see the event). + + + + + Returns whether SSL is being used for the connection. + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Selects the local Secure Sockets Layer (SSL) certificate used for authentication. + + + See + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + + + Cannot be used in conjunction with , and + . + + + See . + + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Reports whether the backend uses the newer integer timestamp representation. + Note that the old floating point representation is not supported. + Meant for use by type plugins (e.g. NodaTime) + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Holds all PostgreSQL parameters received for this connection. Is updated if the values change + (e.g. as a result of a SET command). + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds, passed to . + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value is passed to . + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds. + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value as + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Checks whether the connection is currently bound to a connector, and if so, returns it via + . + + + + + Binds this connection to a physical connector. This happens when opening a non-multiplexing connection, + or when starting a transaction on a multiplexed connection. + + + + + Ends binding scope to the physical connection and returns it to the pool. Only useful with multiplexing on. + + + After this method is called, under no circumstances the physical connection (connector) should ever be used if multiplexing is on. + See #3249. + + + + + Returns the supported collections + + + + + Returns the schema collection specified by the collection name. + + The collection name. + The collection specified. + + + + Returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + The collection specified. + + + + Asynchronously returns the supported collections. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name. + + The collection name. + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Creates a closed connection with the connection string and authentication details of this message. + + + + + Clones this connection, replacing its connection string with the given one. + This allows creating a new connection with the same security information + (password, SSL callbacks) while changing other connection parameters (e.g. + database or pooling) + + + + + This method changes the current database by disconnecting from the actual + database and connecting to the specified. + + The name of the database to use in place of the current database. + + + + DB provider factory. + + + + + Clears the connection pool. All idle physical connections in the pool of the given connection are + immediately closed, and any busy connections which were opened before was called + will be closed when returned to the pool. + + + + + Clear all connection pools. All idle physical connections in all pools are immediately closed, and any busy + connections which were opened before was called will be closed when returned + to their pool. + + + + + Unprepares all prepared statements on this connection. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + This event is unsupported by Npgsql. Use instead. + + + + + The connection is currently not bound to a connector. + + + + + The connection is bound to its connector for the scope of the entire connection + (i.e. non-multiplexed connection). + + + + + The connection is bound to its connector for the scope of a transaction. + + + + + The connection is bound to its connector for the scope of a COPY operation. + + + + + The connection is bound to its connector for the scope of a single reader. + + + + + The connection is bound to its connector for an unspecified, temporary scope; the code that initiated + the binding is also responsible to unbind it. + + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notice information (e.g. message, severity...). + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notification payload. + + + + Represents a method that allows the application to provide a certificate collection to be used for SSL client authentication + + + A to be filled with one or more client + certificates. + + + + + Represents a method that allows the application to provide a password at connection time in code rather than configuration + + Hostname + Port + Database Name + User + A valid password for connecting to the database + + + + Provides a simple way to create and manage the contents of connection strings used by + the class. + + + + + Cached DataSource value to reduce allocations on NpgsqlConnection.DataSource.get + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class. + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class, optionally using ODBC rules for quoting values. + + true to use {} to delimit fields; false to use quotation marks. + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class and sets its . + + + + + GeneratedAction and GeneratedActions exist to be able to produce a streamlined binary footprint for NativeAOT. + An idiomatic approach where each action has its own method would double the binary size of NpgsqlConnectionStringBuilder. + + + + + Gets or sets the value associated with the specified key. + + The key of the item to get or set. + The value associated with the specified key. + + + + Adds an item to the . + + The key-value pair to be added. + + + + Removes the entry with the specified key from the DbConnectionStringBuilder instance. + + The key of the key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Removes the entry from the DbConnectionStringBuilder instance. + + The key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Clears the contents of the instance. + + + + + Determines whether the contains a specific key. + + The key to locate in the . + true if the contains an entry with the specified key; otherwise false. + + + + Determines whether the contains a specific key-value pair. + + The item to locate in the . + true if the contains the entry; otherwise false. + + + + Retrieves a value corresponding to the supplied key from this . + + The key of the item to retrieve. + The value corresponding to the key. + true if keyword was found within the connection string, false otherwise. + + + + The hostname or IP address of the PostgreSQL server to connect to. + + + + + The TCP/IP port of the PostgreSQL server. + + + + + The PostgreSQL database to connect to. + + + + + The username to connect with. + + + + + The password to connect with. + + + + + Path to a PostgreSQL password file (PGPASSFILE), from which the password would be taken. + + + + + The optional application name parameter to be sent to the backend during connection initiation. + + + + + Whether to enlist in an ambient TransactionScope. + + + + + Gets or sets the schema search path. + + + + + Gets or sets the client_encoding parameter. + + + + + Gets or sets the .NET encoding that will be used to encode/decode PostgreSQL string data. + + + + + Gets or sets the PostgreSQL session timezone, in Olson/IANA database format. + + + + + Controls whether SSL is required, disabled or preferred, depending on server support. + + + + + Location of a client certificate to be sent to the server. + + + + + Location of a client key for a client certificate to be sent to the server. + + + + + Password for a key for a client certificate. + + + + + Location of a CA certificate used to validate the server certificate. + + + + + Whether to check the certificate revocation list during authentication. + False by default. + + + + + The Kerberos service name to be used for authentication. + + + + + The Kerberos realm to be used for authentication. + + + + + Gets or sets a Boolean value that indicates if security-sensitive information, such as the password, is not returned as part of the connection if the connection is open or has ever been in an open state. + + + + + When enabled, parameter values are logged when commands are executed. Defaults to false. + + + + + When enabled, PostgreSQL error details are included on and + . These can contain sensitive data. + + + + + Controls whether channel binding is required, disabled or preferred, depending on server support. + + + + + Whether connection pooling should be used. + + + + + The minimum connection pool size. + + + + + The maximum connection pool size. + + + + + The time to wait before closing idle connections in the pool if the count + of all connections exceeds MinPoolSize. + + The time (in seconds) to wait. The default value is 300. + + + + How many seconds the pool waits before attempting to prune idle connections that are beyond + idle lifetime (. + + The interval (in seconds). The default value is 10. + + + + The total maximum lifetime of connections (in seconds). Connections which have exceeded this value will be + destroyed instead of returned from the pool. This is useful in clustered configurations to force load + balancing between a running server and a server just brought online. + + The time (in seconds) to wait, or 0 to to make connections last indefinitely (the default). + + + + The time to wait (in seconds) while trying to establish a connection before terminating the attempt and generating an error. + Defaults to 15 seconds. + + + + + The time to wait (in seconds) while trying to execute a command before terminating the attempt and generating an error. + Defaults to 30 seconds. + + + + + The time to wait (in milliseconds) while trying to read a response for a cancellation request for a timed out or cancelled query, before terminating the attempt and generating an error. + Zero for infinity, -1 to skip the wait. + Defaults to 2000 milliseconds. + + + + + Determines the preferred PostgreSQL target server type. + + + + + Enables balancing between multiple hosts by round-robin. + + + + + Controls for how long the host's cached state will be considered as valid. + + + + + The number of seconds of connection inactivity before Npgsql sends a keepalive query. + Set to 0 (the default) to disable. + + + + + Whether to use TCP keepalive with system defaults if overrides isn't specified. + + + + + The number of seconds of connection inactivity before a TCP keepalive query is sent. + Use of this option is discouraged, use instead if possible. + Set to 0 (the default) to disable. + + + + + The interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received. + Defaults to the value of . must be non-zero as well. + + + + + Determines the size of the internal buffer Npgsql uses when reading. Increasing may improve performance if transferring large values from the database. + + + + + Determines the size of the internal buffer Npgsql uses when writing. Increasing may improve performance if transferring large values to the database. + + + + + Determines the size of socket read buffer. + + + + + Determines the size of socket send buffer. + + + + + The maximum number SQL statements that can be automatically prepared at any given point. + Beyond this number the least-recently-used statement will be recycled. + Zero (the default) disables automatic preparation. + + + + + The minimum number of usages an SQL statement is used before it's automatically prepared. + Defaults to 5. + + + + + If set to true, a pool connection's state won't be reset when it is closed (improves performance). + Do not specify this unless you know what you're doing. + + + + + Load table composite type definitions, and not just free-standing composite types. + + + + + Set the replication mode of the connection + + + This property and its corresponding enum are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Set PostgreSQL configuration parameter default values for the connection. + + + + + Configure the way arrays of value types are returned when requested as object instances. + + + + + Enables multiplexing, which allows more efficient use of connections. + + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A compatibility mode for special PostgreSQL server types. + + + + + Whether to trust the server certificate without validating it. + + + + + The time to wait (in seconds) while trying to execute a an internal command before terminating the attempt and generating an error. + + + + + Determines whether the specified object is equal to the current object. + + + + + Hash function. + + + + + + Gets an containing the keys of the . + + + + + Gets an containing the values in the . + + + + + Copies the elements of the to an Array, starting at a particular Array index. + + + The one-dimensional Array that is the destination of the elements copied from . + The Array must have zero-based indexing. + + + The zero-based index in array at which copying begins. + + + + + Returns an enumerator that iterates through the . + + + + + + + + + Marks on which participate in the connection + string. Optionally holds a set of synonyms for the property. + + + + + Holds a list of synonyms for the property. + + + + + Creates a . + + + + + Creates a . + + + + + An option specified in the connection string that activates special compatibility features. + + + + + No special server compatibility mode is active + + + + + The server is an Amazon Redshift instance. + + + + + The server is doesn't support full type loading from the PostgreSQL catalogs, support the basic set + of types via information hardcoded inside Npgsql. + + + + + Specifies how to manage SSL. + + + + + SSL is disabled. If the server requires SSL, the connection will fail. + + + + + Prefer non-SSL connections if the server allows them, but allow SSL connections. + + + + + Prefer SSL connections if the server allows them, but allow connections without SSL. + + + + + Fail the connection if the server doesn't support SSL. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate with host's name. + + + + + Specifies how to manage channel binding. + + + + + Channel binding is disabled. If the server requires channel binding, the connection will fail. + + + + + Prefer channel binding if the server allows it, but connect without it if not. + + + + + Fail the connection if the server doesn't support channel binding. + + + + + Specifies how the mapping of arrays of + value types + behaves with respect to nullability when they are requested via an API returning an . + + + + + Arrays of value types are always returned as non-nullable arrays (e.g. int[]). + If the PostgreSQL array contains a NULL value, an exception is thrown. This is the default mode. + + + + + Arrays of value types are always returned as nullable arrays (e.g. int?[]). + + + + + The type of array that gets returned is determined at runtime. + Arrays of value types are returned as non-nullable arrays (e.g. int[]) + if the actual instance that gets returned doesn't contain null values + and as nullable arrays (e.g. int?[]) if it does. + + When using this setting, make sure that your code is prepared to the fact + that the actual type of array instances returned from APIs like + may change on a row by row base. + + + + Specifies whether the connection shall be initialized as a physical or + logical replication connection + + + This enum and its corresponding property are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Replication disabled. This is the default + + + + + Physical replication enabled + + + + + Logical replication enabled + + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + This class represents an adapter from many commands: select, update, insert and delete to fill a . + + + + + Row updated event. + + + + + Row updating event. + + + + + Default constructor. + + + + + Constructor. + + + + + + Constructor. + + + + + + + Constructor. + + + + + + + Create row updated event. + + + + + Create row updating event. + + + + + Raise the RowUpdated event. + + + + + + Raise the RowUpdating event. + + + + + + Delete command. + + + + + Select command. + + + + + Update command. + + + + + Insert command. + + + + + Reads a forward-only stream of rows from a data source. + + + + + The behavior of the command with which this reader was executed. + + + + + In multiplexing, this is as the sending is managed in the write multiplexing loop, + and does not need to be awaited by the reader. + + + + + Holds the list of statements being executed by this reader. + + + + + The index of the current query resultset we're processing (within a multiquery) + + + + + Records, for each column, its starting offset and length in the current row. + Used only in non-sequential mode. + + + + + The index of the column that we're on, i.e. that has already been parsed, is + is memory and can be retrieved. Initialized to -1, which means we're on the column + count (which comes before the first column). + + + + + The position in the buffer at which the current data row message ends. + Used only when the row is consumed non-sequentially. + + + + + Determines, if we can consume the row non-sequentially. + Mostly useful for a sequential mode, when the row is already in the buffer. + Should always be true for the non-sequential mode. + + + + + The RowDescription message for the current resultset being processed + + + + + Stores the last converter info resolved by column, to speed up repeated reading. + + + + + Whether the current result set has rows + + + + + Is raised whenever Close() is called. + + + + + Advances the reader to the next record in a result set. + + true if there are more rows; otherwise false. + + The default position of a data reader is before the first record. Therefore, you must call Read to begin accessing data. + + + + + This is the asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Advances the reader to the next result when reading the results of a batch of statements. + + + + + + This is the asynchronous version of NextResult. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Internal implementation of NextResult + + + + + Note that in SchemaOnly mode there are no resultsets, and we read nothing from the backend (all + RowDescriptions have already been processed and are available) + + + + + Gets a value indicating the depth of nesting for the current row. Always returns zero. + + + + + Gets a value indicating whether the data reader is closed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. -1 for SELECT statements; 0 if no rows were affected or the statement failed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. 0 for SELECT statements, if no rows were affected or the statement failed. + + + + + Returns details about each statement that this reader will or has executed. + + + Note that some fields (i.e. rows and oid) are only populated as the reader + traverses the result. + + For commands with multiple queries, this exposes the number of rows affected on + a statement-by-statement basis, unlike + which exposes an aggregation across all statements. + + + + + Gets a value that indicates whether this DbDataReader contains one or more rows. + + + + + Indicates whether the reader is currently positioned on a row, i.e. whether reading a + column is possible. + This property is different from in that will + return true even if attempting to read a column will fail, e.g. before + has been called + + + + + Gets the name of the column, given the zero-based column ordinal. + + The zero-based column ordinal. + The name of the specified column. + + + + Gets the number of columns in the current row. + + + + + Consumes all result sets for this reader, leaving the connector ready for sending and processing further + queries + + + + + Releases the resources used by the . + + + + + Releases the resources used by the . + + + + + Closes the reader, allowing a new command to be executed. + + + + + Closes the reader, allowing a new command to be executed. + + + + + Gets the value of the specified column as a Boolean. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a byte. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single character. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 16-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 32-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 64-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a double-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a globally-unique identifier (GUID). + + The zero-based column ordinal. + The value of the specified column. + + + + Populates an array of objects with the column values of the current row. + + An array of Object into which to copy the attribute columns. + The number of instances of in the array. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a TimeSpan, + + + PostgreSQL's interval type has has a resolution of 1 microsecond and ranges from + -178000000 to 178000000 years, while .NET's TimeSpan has a resolution of 100 nanoseconds + and ranges from roughly -29247 to 29247 years. + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + The zero-based column ordinal. + The value of the specified column. + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + Currently only supported in non-sequential mode. + + The zero-based column ordinal. + A data reader. + + + + Reads a stream of bytes from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of bytes read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Reads a stream of characters from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of characters read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Asynchronously gets the value of the specified column as a type. + + The type of the value to be returned. + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Synchronously gets the value of the specified column as a type. + + Synchronously gets the value of the specified column as a type. + The column to be retrieved. + The column to be retrieved. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The name of the column. + The value of the specified column. + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + The zero-based column ordinal. + true if the specified column is equivalent to ; otherwise false. + + + + An asynchronous version of , which gets a value that indicates whether the column contains non-existent or missing values. + The parameter is currently ignored. + + The zero-based column to be retrieved. + + An optional token to cancel the asynchronous operation. The default value is . + + true if the specified column value is equivalent to otherwise false. + + + + Gets the column ordinal given the name of the column. + + The name of the column. + The zero-based column ordinal. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + The zero-based column index. + + + + Gets the data type information for the specified field. + This is the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + The zero-based column index. + + + + Gets the OID for the PostgreSQL type for the specified field, as it appears in the pg_type table. + + + This is a PostgreSQL-internal value that should not be relied upon and should only be used for + debugging purposes. + + The zero-based column index. + + + + Gets the data type of the specified column. + + The zero-based column ordinal. + The data type of the specified column. + + + + Returns an that can be used to iterate through the rows in the data reader. + + An that can be used to iterate through the rows in the data reader. + + + + Returns schema information for the columns in the current resultset. + + + + + + Asynchronously returns schema information for the columns in the current resultset. + + + + + + Returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Asynchronously returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Seeks to the given column. The 4-byte length is read and returned. + + + + + Checks that we have a RowDescription, but not necessary an actual resultset + (for operations which work in SchemaOnly mode. + + + + + Unbinds reader from the connector. + Should be called before the connector is returned to the pool. + + + + + + + + + + + Contains the connection string returned to the user from + after the connection has been opened. Does not contain the password unless Persist Security Info=true. + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + Semaphore to ensure we don't perform type loading and mapping setup concurrently for this data source. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a command ready for use against this . + + An optional SQL for the command. + + + + Creates a batch ready for use against this . + + + + + Creates a new for the given . + + + + + Creates a new for the given . + + + + + Manually sets the password to be used the next time a physical connection is opened. + Consider using instead. + + + + + + + + + + + + + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + Constructs a new , optionally starting out from the given . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + The exception that is thrown when server-related issues occur. + + + PostgreSQL errors (e.g. query SQL issues, constraint violations) are raised via + which is a subclass of this class. + Purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ArgumentException). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class with a specified error message. + + The message that describes the error. + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error or a timeout). + + + + + + + + + + + Initializes a new instance of the class with serialized data. + + The SerializationInfo that holds the serialized object data about the exception being thrown. + The StreamingContext that contains contextual information about the source or destination. + + + + A factory to create instances of various Npgsql objects. + + + + + Gets an instance of the . + This can be used to retrieve strongly typed data objects. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Specifies whether the specific supports the class. + + + + + Specifies whether the specific supports the class. + + + + + + + + + + + + + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + A service object of type serviceType, or null if there is no service object of type serviceType. + + + + Large object manager. This class can be used to store very large files in a PostgreSQL database. + + + + + The largest chunk size (in bytes) read and write operations will read/write each roundtrip to the network. Default 4 MB. + + + + + Creates an NpgsqlLargeObjectManager for this connection. The connection must be opened to perform remote operations. + + + + + + Execute a function + + + + + Execute a function that returns a byte array + + + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + The oid for the large object created + If an oid is already in use + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + The oid for the large object created + If an oid is already in use + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Deletes a large object on the backend. + + Oid of the object to delete + + + + Deletes a large object on the backend. + + Oid of the object to delete + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + An interface to remotely control the seekable stream for an opened large object on a PostgreSQL server. + Note that the OpenRead/OpenReadWrite method as well as all operations performed on this stream must be wrapped inside a database transaction. + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + How many bytes actually read, or 0 if end of file was already reached. + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + + An optional token to cancel the asynchronous operation. The default value is . + + How many bytes actually read, or 0 if end of file was already reached. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + CanTimeout always returns false. + + + + + CanRead always returns true, unless the stream has been closed. + + + + + CanWrite returns true if the stream was opened with write permissions, and the stream has not been closed. + + + + + CanSeek always returns true, unless the stream has been closed. + + + + + Returns the current position in the stream. Getting the current position does not need a round-trip to the server, however setting the current position does. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Does nothing. + + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases resources at the backend allocated for this stream. + + + + + Releases resources at the backend allocated for this stream, iff disposing is true. + + Whether to release resources allocated at the backend. + + + + Configures Npgsql logging + + + + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to false. + + + + + + Globally initializes Npgsql logging to use the provided . + Must be called before any Npgsql APIs are used. + + + This is a legacy-only, backwards compatibility API. New applications should set the logger factory on + and use the resulting instead. + + + The logging factory to use when logging from Npgsql. + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to . + + + + + An which manages connections for multiple hosts, is aware of their states (primary, secondary, + offline...) and can perform failover and load balancing across them. + + + See . + + + + + Returns a new, unopened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Returns an that wraps this multi-host one with the given server type. + + Specifies the server type (e.g. primary, standby). + + + + Clears the database state (primary, secondary, offline...) for all data sources managed by this multi-host data source. + Can be useful to make Npgsql retry a PostgreSQL instance which was previously detected to be offline. + + + + + Reads a forward-only stream of rows from a nested data source. + Can be retrieved using or + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + + The zero-based column ordinal. + A data reader. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides information on a PostgreSQL notification. Notifications are sent when your connection has registered for + notifications on a specific channel via the LISTEN command. NOTIFY can be used to generate such notifications, + allowing for an inter-connection communication channel. + + + + + Process ID of the PostgreSQL backend that sent this notification. + + + + + The channel on which the notification was sent. + + + + + An optional payload string that was sent with this notification. + + + + + Thrown when trying to use a connection that is already busy performing some other operation. + Provides information on the already-executing operation to help with debugging. + + + + + Creates a new instance of . + + + A command which was in progress when the operation which triggered this exception was executed. + + + + + If the connection is busy with another command, this will contain a reference to that command. + Otherwise, if the connection if busy with another type of operation (e.g. COPY), contains + . + + + + + This class represents a parameter to a command that will be sent to server + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the parameter name and a value. + + The name of the parameter to map. + The value of the . + +

+ When you specify an in the value parameter, the is + inferred from the CLR type. +

+

+ When using this constructor, you must be aware of a possible misuse of the constructor which takes a + parameter. This happens when calling this constructor passing an int 0 and the compiler thinks you are passing a value of + . Use for example to have compiler calling the correct constructor. +

+
+
+ + + Initializes a new instance of the class with the parameter name and the data type. + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Gets or sets The name of the . + + The name of the . + The default is an empty string. + + + + + + + Gets or sets the value of the parameter. + + + An that is the value of the parameter. + The default value is . + + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Used to specify which PostgreSQL type will be sent to the database for this parameter. + + + + + + + + + + + Gets or sets the maximum number of digits used to represent the property. + + + The maximum number of digits used to represent the property. + The default value is 0, which indicates that the data provider sets the precision for . + + + + Gets or sets the number of decimal places to which is resolved. + + The number of decimal places to which is resolved. The default is 0. + + + + + + + + + + + + + + + + The collection to which this parameter belongs, if any. + + + + + The PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This property is automatically set if parameters have been derived via + and can be used to + acquire additional information about the parameters' data type. + + + + Attempt to resolve a type info based on available (postgres) type information on the parameter. + + + Bind the current value to the type info, truncate (if applicable), take its size, and do any final validation before writing. + + + + + + + Creates a new that is a copy of the current instance. + + A new that is a copy of this instance. + + + + Represents a collection of parameters relevant to a as well as their respective mappings to columns in + a . + + + + + Initializes a new instance of the NpgsqlParameterCollection class. + + + + + Gets the with the specified name. + + The name of the to retrieve. + + The with the specified name, or a reference if the parameter is not found. + + + + + Gets the at the specified index. + + The zero-based index of the to retrieve. + The at the specified index. + + + + Adds the specified object to the . + + The to add to the collection. + The index of the new object. + + + + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name, + data type and value. + + The name of the . + One of the NpgsqlDbType values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The name of the source column. + The parameter that was added. + + + + Adds a to the given the specified value. + + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified data type and value. + + One of the values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the parameter name and the data type. + + The name of the parameter. + One of the values. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, + and the column length. + + The name of the parameter. + One of the values. + The length of the column. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, the + column length, and the source column name. + + The name of the parameter. + One of the values. + The length of the column. + The name of the source column. + The index of the new object. + + + + + + + + + + + + + + + + Removes the specified from the collection using a specific index. + + The zero-based index of the parameter. + + + + + + + Removes the specified from the collection. + + The name of the to remove from the collection. + + + + Removes the specified from the collection. + + The to remove from the collection. + + + + + + + Gets a value indicating whether a with the specified parameter name exists in the collection. + + The name of the object to find. + + A reference to the requested parameter is returned in this out param if it is found in the list. + This value is if the parameter is not found. + + + if the collection contains the parameter and param will contain the parameter; + otherwise, . + + + + + Removes all items from the collection. + + + + + + + + + + + + + + + + + Gets the number of objects in the collection. + + The number of objects in the collection. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Report the offset within the collection of the given parameter. + + Parameter to find. + Index of the parameter, or -1 if the parameter is not present. + + + + Insert the specified parameter into the collection. + + Index of the existing parameter before which to insert the new one. + Parameter to insert. + + + + Report whether the specified parameter is present in the collection. + + Parameter to find. + True if the parameter was found, otherwise false. + + + + Remove the specified parameter from the collection. + + Parameter to remove. + True if the parameter was found and removed, otherwise false. + + + + Convert collection to a System.Array. + + Destination array. + Starting index in destination array. + + + + Convert collection to a System.Array. + + NpgsqlParameter[] + + + + The parameter collection includes no parameters. + + + + + The parameter collection includes only named parameters. + + + + + The parameter collection includes only positional parameters. + + + + + The parameter collection includes both named and positional parameters. + This is only supported when is set to . + + + + + A generic version of which provides more type safety and + avoids boxing of value types. Use instead of . + + The type of the value that will be stored in the parameter. + + + + Gets or sets the strongly-typed value of the parameter. + + + + + Gets or sets the value of the parameter. This delegates to . + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a parameter name and value. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Provides an API for a raw binary COPY operation, a high-performance data import/export mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The copy binary format header signature + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Writer for a text import, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Reader for a text export, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing export. + + + + + Asynchronously cancels and terminates an ongoing export. + + + + + Provides the underlying mechanism for reading schema information. + + + + + Returns the MetaDataCollections that lists all possible collections. + + The MetaDataCollections + + + + Returns the Restrictions that contains the meaning and position of the values in the restrictions array. + + The Restrictions + + + + Populates some generic type information that is common for base types, arrays, enums, etc. Some will + be overridden later. + + + + + Sets some custom, hardcoded info on a DataType row that cannot be loaded/inferred from PostgreSQL + + + + + List of keywords taken from PostgreSQL 9.0 reserved words documentation. + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + On this builder, various features are disabled by default; unless you're looking to save on code size (e.g. when publishing with + NativeAOT), use instead. + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + Constructs a new , optionally starting out from the given + . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + The same builder instance so that multiple calls can be chained. + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + The same builder instance so that multiple calls can be chained. + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sets up mappings for the PostgreSQL array types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL range types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL record type as a .NET object[]. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL tsquery and tsvector types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL ltree extension types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for extra conversions from PostgreSQL to .NET types. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use TLS/SSl encryption for connections to PostgreSQL. This does not guarantee that encryption will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use GSS/SSPI authentication for connections to PostgreSQL. This does not guarantee that it will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + Options to configure Npgsql's support for OpenTelemetry tracing. + Currently no options are available. + + + + + Represents a transaction to be made in a PostgreSQL database. This class cannot be inherited. + + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + If true, the transaction has been committed/rolled back, but not disposed. + + + + + Specifies the isolation level for this transaction. + + The isolation level for this transaction. The default is . + + + + Commits the database transaction. + + + + + Commits the database transaction. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Rolls back a transaction from a pending state. + + + + + Rolls back a transaction from a pending state. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Creates a transaction save point. + + The name of the savepoint. + + This method does not cause a database roundtrip to be made. The savepoint creation statement will instead be sent along with + the next command. + + + + + Creates a transaction save point. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + This method does not cause a database roundtrip to be made, and will therefore always complete synchronously. + The savepoint creation statement will instead be sent along with the next command. + + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Indicates whether this transaction supports database savepoints. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, without rolling back. Used only in special circumstances, e.g. when + the connection is broken. + + + + + Unbinds transaction from the connector. + Should be called before the connector is returned to the pool. + + + + + Represents a .pgpass file, which contains passwords for noninteractive connections + + + + + File name being parsed for credentials + + + + + Initializes a new instance of the class + + + + + + Parses file content and gets all credentials from the file + + corresponding to all lines in the .pgpass file + + + + Searches queries loaded from .PGPASS file to find first entry matching the provided parameters. + + Hostname to query. Use null to match any. + Port to query. Use null to match any. + Database to query. Use null to match any. + User name to query. Use null to match any. + Matching if match was found. Otherwise, returns null. + + + + Represents a hostname, port, database, username, and password combination that has been retrieved from a .pgpass file + + + + + Hostname parsed from the .pgpass file + + + + + Port parsed from the .pgpass file + + + + + Database parsed from the .pgpass file + + + + + User name parsed from the .pgpass file + + + + + Password parsed from the .pgpass file + + + + + This class represents an entry from the .pgpass file + + Hostname parsed from the .pgpass file + Port parsed from the .pgpass file + Database parsed from the .pgpass file + User name parsed from the .pgpass file + Password parsed from the .pgpass file + + + + Creates new based on string in the format hostname:port:database:username:password. The : and \ characters should be escaped with a \. + + string for the entry from the pgpass file + New instance of for the string + Entry is not formatted as hostname:port:database:username:password or non-wildcard port is not a number + + + + Checks whether this matches the parameters supplied + + Hostname to check against this entry + Port to check against this entry + Database to check against this entry + Username to check against this entry + True if the entry is a match. False otherwise. + + + + Checks if 2 strings are a match for a considering that either value can be a wildcard (*) + + Value being searched + Value from the PGPASS entry + True if the values are a match. False otherwise. + + + + Tracks all connectors currently managed by this pool, whether idle or busy. + Only updated rarely - when physical connections are opened/closed - but is read in perf-sensitive contexts. + + + + + Reader side for the idle connector channel. Contains nulls in order to release waiting attempts after + a connector has been physically closed/broken. + + + + + Incremented every time this pool is cleared via or + . Allows us to identify connections which were + created before the clear. + + + + + Provides lookup for a pool based on a connection string. + + + Note that pools created directly as are referenced directly by users, and aren't managed here. + + + + + Resets the pool manager to its initial state, for test purposes only. + Assumes that no other threads are accessing the pool. + + + + + The default implementation of , for standard PostgreSQL databases.. + + + + + + + + The default implementation of NpgsqlDatabase, for standard PostgreSQL databases. + + + + + The PostgreSQL types detected in the database. + + + + + + + + The PostgreSQL version string as returned by the version() function. Populated during loading. + + + + + True if the backend is Amazon Redshift; otherwise, false. + + + + + + + + True if the 'pg_enum' table includes the 'enumsortorder' column; otherwise, false. + + + + + True if the 'pg_type' table includes the 'typcategory' column; otherwise, false. + + + pg_type.typcategory is added after 8.4. + see: https://www.postgresql.org/docs/8.4/static/catalog-pg-type.html#CATALOG-TYPCATEGORY-TABLE + + + + + Loads database information from the PostgreSQL database specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A task representing the asynchronous operation. + + + + + Generates a raw SQL query string to select type information. + + + Select all types (base, array which is also base, enum, range, composite). + Note that arrays are distinguished from primitive types through them having typreceive=array_recv. + Order by primitives first, container later. + For arrays and ranges, join in the element OID and type (to filter out arrays of unhandled + types). + + + + + Loads type information from the backend specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A collection of types loaded from the backend. + + + Unknown typtype for type '{internalName}' in pg_type: {typeChar}. + + + + Provides constants for PostgreSQL error codes. + + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The exception that is thrown when the PostgreSQL backend reports errors (e.g. query + SQL issues, constraint violations). + + + This exception only corresponds to a PostgreSQL-delivered error. + Other errors (e.g. network issues) will be raised via , + and purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ). + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html, + https://www.postgresql.org/docs/current/static/protocol-error-fields.html + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Populates a with the data needed to serialize the target object. + + The to populate with data. + The destination (see ) for this serialization. + + + + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error). Check . + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + Constants are defined in . + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + + https://www.postgresql.org/docs/current/static/protocol-flow.html#PROTOCOL-ASYNC + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Provides data for a PostgreSQL notice event. + + + + + The Notice that was sent from the database. + + + + + Represents a PostgreSQL array data type, which can hold several multiple values in a single column. + + + See https://www.postgresql.org/docs/current/static/arrays.html. + + + + + The PostgreSQL data type of the element contained within this array. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + + + + Represents a PostgreSQL base data type, which is a simple scalar value. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + + + + Represents a PostgreSQL composite data type, which can hold multiple fields of varying types in a single column. + + + See https://www.postgresql.org/docs/current/static/rowtypes.html. + + + + + Holds the name and types for all fields. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a field in a PostgreSQL composite data type. + + + + + The name of the composite field. + + + + + The type of the composite field. + + + + + + + + Represents a PostgreSQL domain type. + + + See https://www.postgresql.org/docs/current/static/sql-createdomain.html. + + When PostgreSQL returns a RowDescription for a domain type, the type OID is the base type's + (so fetching a domain type over text returns a RowDescription for text). + However, when a composite type is returned, the type OID there is that of the domain, + so we provide "clean" support for domain types. + + + + + The PostgreSQL data type of the base type, i.e. the type this domain is based on. + + + + + True if the domain has a NOT NULL constraint, otherwise false. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a PostgreSQL enum data type. + + + See https://www.postgresql.org/docs/current/static/datatype-enum.html. + + + + + The enum's fields. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Represents a PostgreSQL multirange data type. + + +

See https://www.postgresql.org/docs/current/static/rangetypes.html.

+

Multirange types were introduced in PostgreSQL 14.

+
+
+ + + The PostgreSQL data type of the range of this multirange. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Represents a PostgreSQL range data type. + + + See https://www.postgresql.org/docs/current/static/rangetypes.html. + + + + + The PostgreSQL data type of the subtype of this range. + + + + + The PostgreSQL data type of the multirange of this range. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Represents a PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This class is abstract, see derived classes for concrete types of PostgreSQL types. + + + Instances of this class are shared between connections to the same databases. + For more info about what this class and its subclasses represent, see + https://www.postgresql.org/docs/current/static/catalog-pg-type.html. + + + + + Constructs a representation of a PostgreSQL data type. + + The data type's namespace (or schema). + The data type's name. + The data type's OID. + + + + Constructs a representation of a PostgreSQL data type. + + The data type's fully qualified name. + The data type's OID. + + + + The data type's OID - a unique id identifying the data type in a given database (in pg_type). + + + + + The data type's namespace (or schema). + + + + + The data type's name. + + + Note that this is the standard, user-displayable type name (e.g. integer[]) rather than the internal + PostgreSQL name as it is in pg_type (_int4). See for the latter. + + + + + The full name of the backend type, including its namespace. + + + + + A display name for this backend type, including the namespace unless it is pg_catalog (the namespace + for all built-in types). + + + + + The data type's internal PostgreSQL name (e.g. _int4 not integer[]). + See for a more user-friendly name. + + + + + If a PostgreSQL array type exists for this type, it will be referenced here. + Otherwise null. + + + + + If a PostgreSQL range type exists for this type, it will be referenced here. + Otherwise null. + + + + + Generates the type name including any facts (size, precision, scale), given the PostgreSQL type modifier. + + + + + Returns a string that represents the current object. + + + + Canonizes (nested) domain types to underlying types, does not handle composites. + + + A base type. + + + An enum carrying its variants. + + + A pseudo type like anyarray. + + + + Represents a PostgreSQL data type that isn't known to Npgsql and cannot be handled. + + + + + Constructs a the unknown backend type. + + + + + Internally represents a statement has been prepared, is in the process of being prepared, or is a + candidate for preparation (i.e. awaiting further usages). + + + + + If true, the user explicitly requested this statement be prepared. It does not get closed as part of + the automatic preparation LRU mechanism. + + + + + If this statement is about to be prepared, but replaces a previous statement which needs to be closed, + this holds the name of the previous statement. Otherwise null. + + + + + Contains the handler types for a prepared statement's parameters, for overloaded cases (same SQL, different param types) + Only populated after the statement has been prepared (i.e. null for candidates). + + + + + The state of a . + + + + + The statement hasn't been prepared yet, nor is it in the process of being prepared. + This is the value for autoprepare candidates which haven't been prepared yet, and is also + a temporary state during preparation. + + + + + The statement is in the process of being prepared. + + + + + The statement has been fully prepared and can be executed. + + + + + The statement is in the process of being unprepared. This is a temporary state that only occurs during + unprepare. Specifically, it means that a Close message for the statement has already been written + to the write buffer. + + + + + The statement has been unprepared and is no longer usable. + + + + + The statement was invalidated because e.g. table schema has changed since preparation. + + + + + Total number of current prepared statements (whether explicit or automatic). + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + Creates a new replication slot and returns information about the newly-created slot. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + The name of the output plugin used for logical decoding (see + + https://www.postgresql.org/docs/current/logicaldecoding-output-plugin.html). + + if this replication slot shall be temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + A to specify what to do with the + snapshot created during logical slot initialization. , which is + also the default, will export the snapshot for use in other sessions. This option can't be used inside a + transaction. will use the snapshot for the current transaction + executing the command. This option must be used in a transaction, and + must be the first command run in that transaction. Finally, will + just use the snapshot for logical decoding as normal but won't do anything else with it. + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a class that + can be used to initialize instances of subclasses. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + or at the slot's consistent point if isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + The collection of options passed to the slot's logical decoding plugin. + + Whether the plugin will be bypassing and reading directly from the buffer. + + A representing an that + can be used to stream WAL entries in form of instances. + + + + Contains information about a newly-created logical replication slot. + + + + + Creates a new logical replication slot + + The logical decoding output plugin to the corresponding replication slot was created for. + A struct with information to create the replication slot. + + + + The identifier of the snapshot exported by the command. + The snapshot is valid until a new command is executed on this connection or the replication connection is closed. + + + + + The name of the output plugin used by the newly-created logical replication slot. + + + + + The WAL location at which the slot became consistent. + This is the earliest location from which streaming can start on this replication slot. + + + + + Represents a logical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Decides what to do with the snapshot created during logical slot initialization. + + + + + Export the snapshot for use in other sessions. This is the default. + This option can't be used inside a transaction. + + + + + Use the snapshot for the current transaction executing the command. + This option must be used in a transaction, and CREATE_REPLICATION_SLOT must be the first command run + in that transaction. + + + + + Just use the snapshot for logical decoding as normal but don't do anything else with it. + + + + + Logical Replication Protocol begin message + + + + + The final LSN of the transaction. + + + + + Commit timestamp of the transaction. + The value is in number of microseconds since PostgreSQL epoch (2000-01-01). + + + + + Logical Replication Protocol begin prepare message + + + + + Logical Replication Protocol commit message + + + + + Flags; currently unused. + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit. + + + + + No flags. + + + + + Logical Replication Protocol commit prepared message + + + + + Flags for the commit prepared; currently unused. + + + + + The LSN of the commit prepared. + + + + + The end LSN of the commit prepared transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to DEFAULT. + + + + + Columns representing the new row. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY REPLICA IDENTITY set to FULL. + + + + + Columns representing the deleted row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to FULL. + + + + + Columns representing the old row. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to USING INDEX. + + + + + Columns representing the key. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol insert message + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY set to DEFAULT or USING INDEX. + + + + + Columns representing the key. + + + + + Logical Replication Protocol logical decoding message + + + + + Flags; Either 0 for no flags or 1 if the logical decoding message is transactional. + + + + + The LSN of the logical decoding message. + + + + + The prefix of the logical decoding message. + + + + + The content of the logical decoding message. + + + + + Logical Replication Protocol origin message + + + + + The LSN of the commit on the origin server. + + + + + Name of the origin. + + + + + The base class of all Logical Replication Protocol Messages + + + See https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html for details about the + protocol. + + + + + + + + Abstract base class for Logical Replication Protocol prepare and begin prepare message + + + + + The user defined GID of the two-phase transaction. + + + + + Logical Replication Protocol prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Abstract base class for the logical replication protocol begin prepare and prepare message + + + + + The LSN of the prepare. + + + + + The end LSN of the prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Logical Replication Protocol relation message + + + + + ID of the relation. + + + + + Namespace (empty string for pg_catalog). + + + + + Relation name. + + + + + Replica identity setting for the relation (same as relreplident in pg_class): + columns used to form “replica identity” for rows. + + + + + Relation columns + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Flags for the column. + + + + + No flags. + + + + + Marks the column as part of the key. + + + + + Replica identity setting for the relation (same as relreplident in pg_class). + + + See + + + + + Default (primary key, if any). + + + + + Nothing. + + + + + All columns. + + + + + Index with indisreplident set (same as nothing if the index used has been dropped) + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. Currently can be either 0 for no flags or 1 which marks the column as part of the key. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Logical Replication Protocol rollback prepared message + + + + + Flags for the rollback prepared; currently unused. + + + + + The end LSN of the prepared transaction. + + + + + The end LSN of the rollback prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Rollback timestamp of the transaction. + + + + + Flags for the rollback prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream abort message + + + + + Xid of the subtransaction (will be same as xid of the transaction for top-level transactions). + + + + + Logical Replication Protocol stream commit message + + + + + Flags; currently unused (must be 0). + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Logical Replication Protocol stream prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream start message + + + + + A value of 1 indicates this is the first stream segment for this XID, 0 for any other stream segment. + + + + + Logical Replication Protocol stream stop message + + + + + The common base class for all streaming replication messages that can be part of a streaming transaction (protocol V2) + + + + + Xid of the transaction (only present for streamed transactions). + + + + + The common base class for all replication messages that set the transaction xid of a transaction + + + + + Xid of the transaction. + + + + + Logical Replication Protocol truncate message + + + + + Option flags for TRUNCATE + + + + + The relations being truncated. + + + + + Enum representing the additional options for the TRUNCATE command as flags + + + + + No additional option was specified + + + + + CASCADE was specified + + + + + RESTART IDENTITY was specified + + + + + Logical Replication Protocol type message + + + + + ID of the data type. + + + + + Namespace (empty string for pg_catalog). + + + + + Name of the data type. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Options to be passed to the pgoutput plugin + + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + The version of the Logical Streaming Replication Protocol + + + + + The publication names to stream + + + + + Send values in binary representation + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of in-progress transactions + + + This works as of logical streaming replication protocol version 2 (PostgreSQL 14+) + + + + + Write logical decoding messages into the replication stream + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of prepared transactions + + + This works in PostgreSQL versions 15+ + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot initialized for for the logical streaming replication protocol + (pgoutput logical decoding plugin). + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The representing the existing replication slot + + + + Creates a new instance. + + + This constructor is intended to be consumed by plugins sitting on top of + + + The from which the new instance should be initialized + + + + Represents a streaming tuple containing . + + + + + The number of columns in the tuple. + + + + + + + + Represents a column value in a logical replication session. + + + + + The length of the value in bytes. + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + true if the specified column is equivalent to ; otherwise false. + + + + Gets a value that indicates whether the column contains an unchanged TOASTed value (the actual value is not sent). + + Whether the specified column is an unchanged TOASTed value. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + + + + Gets the data type information for the specified field. + This is be the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + + + + Gets the data type of the specified column. + + The data type of the specified column. + + + + Gets the value of the specified column as a type. + + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Gets the value of the specified column as an instance of . + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Retrieves data as a . + + + + + Retrieves data as a . + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Identifies the data as NULL value. + + + + + Identifies unchanged TOASTed value (the actual value is not sent). + + + + + Identifies the data as text formatted value. + + + + + Identifies the data as binary value. + + Added in PG14 + + + + Extension methods to use with the pg_output logical decoding plugin. + + + + + Creates a class that wraps a replication slot using the + "pgoutput" logical decoding plugin and can be used to start streaming replication via the logical + streaming replication protocol. + + + See https://www.postgresql.org/docs/current/protocol-logical-replication.html + and https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html + for more information. + + The to use for creating the replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start the Logical Streaming Replication Protocol (pgoutput logical decoding plugin), + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The collection of options passed to the slot's logical decoding plugin. + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a physical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Creates a that wraps a PostgreSQL physical replication slot and + can be used to start physical streaming replication + + + The name of the slot to create. Must be a valid replication slot name + (see Section 26.2.6.1). + + + if this replication slot shall be a temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + + + If this is set to this physical replication slot reserves WAL immediately. Otherwise, + WAL is only reserved upon connection from a streaming replication client. + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a that represents the + newly-created replication slot. + + + + + Read some information associated to a replication slot. + + This command is currently only supported for physical replication slots. + + + + The name of the slot to read. Must be a valid replication slot name + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a or + if the replication slot does not exist. + + + + Instructs the server to start streaming the WAL for physical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for physical replication, starting at the WAL location + and timeline id specified in . The server can reply with an error, for example + if the requested section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The must contain a valid to be used for this overload. + + + The token to be used for stopping the replication. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Wraps a replication slot that uses physical replication. + + + + + Creates a new instance. + + + Create a instance with this constructor to wrap an existing PostgreSQL replication slot + that has been initialized for physical replication. + + The name of the existing replication slot + The replication slot's restart_lsn + The timeline ID associated to restart_lsn, following the current timeline history. + + + + The replication slot's restart_lsn. + + + + + The timeline ID associated to restart_lsn, following the current timeline history. + + + + + Defines the core behavior of replication connections and provides the base class for + and + . + + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + + The connection string that includes the server name, the database name, and other parameters needed to establish the initial + connection. The default value is an empty string. + + + Since replication connections are a special kind of connection, + , , + and + are always disabled no matter what you set them to in your connection string. + + + + + The location of the last WAL byte + 1 received in the standby. + + + + + The location of the last WAL byte + 1 flushed to disk in the standby. + + + + + The location of the last WAL byte + 1 applied (e. g. written to disk) in the standby. + + + + + Send replies at least this often. + Timeout. disables automated replies. + + + + + Time that receiver waits for communication from master. + Timeout. disables the timeout. + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Gets or sets the wait time before terminating the attempt to execute a command and generating an error. + + The time to wait for the command to execute. The default value is 30 seconds. + + + + The client encoding for the connection + This can only be called when there is an active connection. + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Opens a database replication connection with the property settings specified by the + . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous open operation. + + + + Closes the replication connection and performs tasks associated + with freeing, releasing, or resetting its unmanaged resources asynchronously. + + A task that represents the asynchronous dispose operation. + + + + Requests the server to identify itself. + + + An optional token to cancel the asynchronous operation. The default value is . + + + A containing information about the system we are connected to. + + + + + Requests the server to send the current setting of a run-time parameter. + This is similar to the SQL command SHOW. + + The name of a run-time parameter. + Available parameters are documented in https://www.postgresql.org/docs/current/runtime-config.html. + + + An optional token to cancel the asynchronous operation. The default value is . + + The current setting of the run-time parameter specified in as . + + + + Requests the server to send over the timeline history file for timeline tli. + + The timeline for which the history file should be sent. + + An optional token to cancel the asynchronous operation. The default value is . + + The timeline history file for timeline tli + + + + Sets the current status of the replication as it is interpreted by the consuming client. The value supplied + in will be sent to the server via and + with the next status update. + + A status update which will happen upon server request, upon expiration of + our upon an enforced status update via , whichever happens first. + If you want the value you set here to be pushed to the server immediately (e. g. in synchronous replication scenarios), + call after calling this method. + + + + This is a convenience method setting both and in one operation. + You can use it if your application processes replication messages in a way that doesn't care about the difference between + writing a message and flushing it to a permanent storage medium. + + The location of the last WAL byte + 1 applied (e. g. processed or written to disk) and flushed to disk in the standby. + + + + Sends a forced status update to PostgreSQL with the current WAL tracking information. + + The connection currently isn't streaming + A Task representing the sending of the status update (and not any PostgreSQL response). + + + + Drops a replication slot, freeing any reserved server-side resources. + If the slot is a logical slot that was created in a database other than + the database the walsender is connected to, this command fails. + + The name of the slot to drop. + + causes the command to wait until the slot becomes + inactive if it currently is active instead of the default behavior of raising an error. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous drop operation. + + + + The common base class for all streaming replication messages + + + + + The starting point of the WAL data in this message. + + + + + The current end of WAL on the server. + + + + + The server's system clock at the time this message was transmitted, as microseconds since midnight on 2000-01-01. + + + Since the client using Npgsql and the server may be located in different time zones, + as of Npgsql 7.0 this value is no longer converted to local time but keeps its original value in UTC. + You can check if you don't want to introduce behavior depending on Npgsql versions. + + + + + Contains information about a newly-created replication slot. + + + + + The name of the newly-created replication slot. + + + + + Contains information about a replication slot. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + The name of the replication slot. + + + + + The WAL location at which the slot became consistent. + + + + + The identifier of the snapshot exported by the CREATE_REPLICATION_SLOT command. + + + + + Contains server identification information returned from . + + + + + The unique system identifier identifying the cluster. + This can be used to check that the base backup used to initialize the standby came from the same cluster. + + + + + Current timeline ID. Also useful to check that the standby is consistent with the master. + + + + + Current WAL flush location. Useful to get a known location in the write-ahead log where streaming can start. + + + + + Database connected to. + + + + + Text representations of PostgreSQL WAL operations decoded by the "test_decoding" plugin. See + https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Decoded text representation of the operation performed in this WAL entry + + + + + + + + Returns a clone of this message, which can be accessed after other replication messages have been retrieved. + + + + + Options to be passed to the test_decoding plugin + + + + + Creates a new instance of . + + Include the transaction number for BEGIN and COMMIT command output + Include the timestamp for COMMIT command output + Set the output mode to binary + Skip output for transactions that didn't change the database + Only output data that don't have the replication origin set + Include output from table rewrites that were caused by DDL statements + Enable streaming output + + + + Include the transaction number for BEGIN and COMMIT command output + + + + + Include the timestamp for COMMIT command output + + + + + Set the output mode to binary + + + + + Skip output for transactions that didn't change the database + + + + + Only output data that don't have the replication origin set + + + + + Include output from table rewrites that were caused by DDL statements + + + + + Enable streaming output + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot + initialized for for the test_decoding logical decoding plugin. + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The representing the existing replication slot + + + + Extension methods to use with the + test_decoding logical decoding plugin. + See https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Creates a class that wraps a replication slot using the + test_decoding logical decoding plugin. + + + See https://www.postgresql.org/docs/current/test-decoding.html + for more information. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start streaming the WAL for logical replication using the test_decoding logical decoding plugin, + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The collection of options passed to the slot's logical decoding plugin. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a PostgreSQL timeline history file + + + + + File name of the timeline history file, e.g., 00000002.history. + + + + + Contents of the timeline history file. + + + + + A message representing a section of the WAL data stream. + + + + + A section of the WAL data stream that is raw WAL data in physical replication or decoded with the selected + logical decoding plugin in logical replication. It is only valid until the next + is requested from the stream. + + + A single WAL record is never split across two XLogData messages. + When a WAL record crosses a WAL page boundary, and is therefore already split using continuation records, + it can be split at the page boundary. In other words, the first main WAL record and its continuation + records can be sent in different XLogData messages. + + + + + Stripped-down version of , mainly to support Amazon Redshift. + + + + + Performs some post-setup configuration that's common to both table columns and non-columns. + + + + + Provides schema information about a column. + + + Note that this can correspond to a field returned in a query which isn't an actual table column + + See https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldatareader.getschematable(v=vs.110).aspx + for information on the meaning of the different fields. + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The describing the type of this column. + + + + + The OID of the type of this column in the PostgreSQL pg_type catalog table. + + + + + The OID of the PostgreSQL table of this column. + + + + + The column's position within its table. Note that this is different from , + which is the column's position within the resultset. + + + + + The default SQL expression for this column. + + + + + The value for this column's type. + + + + + + + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + + Specifies server type preference. + + + + + Any successful connection is acceptable. + + + + + Session must accept read-write transactions by default (that is, the server must not be in hot standby mode and the + default_transaction_read_only parameter must be off). + + + + + Session must not accept read-write transactions by default (the converse). + + + + + Server must not be in hot standby mode. + + + + + Server must be in hot standby mode. + + + + + First try to find a primary server, but if none of the listed hosts is a primary server, try again in mode. + + + + + First try to find a standby server, but if none of the listed hosts is a standby server, try again in mode. + + + + + Utility class to execute a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it and at the same time prevent event if the original fails later. + + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The result . + The representing the asynchronous wait. + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The representing the asynchronous wait. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A type mapper, managing how to read and write CLR values to PostgreSQL data types. + + + The preferred way to manage type mappings is on . An alternative, but discouraged, method, is to + manage them globally via ). + + + + + The default name translator to convert CLR type names and member names. Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET enum type to be mapped + + + + Removes an existing enum mapping. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing enum mapping. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR type to a PostgreSQL composite type. + + + CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your members to manually specify a PostgreSQL name. + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET type to be mapped + + + + Removes an existing composite mapping. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to + + + + + Maps a CLR type to a composite type. + + + Maps CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + The .NET type to be mapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing composite mapping. + + The .NET type to be unmapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Adds a type info resolver factory which can add or modify support for PostgreSQL types. + Typically used by plugins. + + The type resolver factory to be added. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Resets all mapping changes performed on this type mapper and reverts it to its original, starting state. + + + + + The base class for user type mappings. + + + + + The name of the PostgreSQL type that this mapping is for. + + + + + The CLR type that this mapping is for. + + + + + Represents a timeout that will expire at some point. + + + + + A wrapper around to simplify reset management. + + + Since there's no way to reset a once it was cancelled, + we need to make sure that an existing cancellation token source hasn't been cancelled, + every time we start it (see https://github.com/dotnet/runtime/issues/4694). + + + + + Used, so we wouldn't concurently use the cts for the cancellation, while it's being disposed + + + + + Set the timeout on the wrapped + and make sure that it hasn't been cancelled yet + + + An optional token to cancel the asynchronous operation. The default value is . + + The from the wrapped + + + + Restart the timeout on the wrapped without reinitializing it, + even if is already set to + + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + The from the wrapped + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + + + + Set the timeout on the wrapped + to + + + can still arrive at a state + where it's value is if the + passed to gets a cancellation request. + If this is the case it will be resolved upon the next call to + or . Calling multiple times or without calling + first will do no any harm (besides eating a tiny amount of CPU cycles). + + + + + Cancel the wrapped + + + + + Cancel the wrapped after delay + + + + + The from the wrapped + . + + + The token is only valid after calling + and before calling the next time. + Otherwise you may end up with a token that has already been + cancelled or belongs to a cancellation token source that has + been disposed. + + + + + Allocation free helper function to find if version is greater than expected + + + + + + + + Note that a connection may be closed before its TransactionScope completes. In this case we close the NpgsqlConnection + as usual but the connector in a special list in the pool; it will be closed only when the scope completes. + + + + + Represents a PostgreSQL data type that can be written or read to the database. + Used in places such as to unambiguously specify + how to encode or decode values. + + + See https://www.postgresql.org/docs/current/static/datatype.html. + + + + + Corresponds to the PostgreSQL 8-byte "bigint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 8-byte floating-point "double" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 4-byte "integer" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL arbitrary-precision "numeric" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL floating-point "real" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 2-byte "smallint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL "money" type. + + See https://www.postgresql.org/docs/current/static/datatype-money.html + + + + Corresponds to the PostgreSQL "boolean" type. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL geometric "box" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "circle" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "line" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "lseg" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "path" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "point" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "polygon" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL "char(n)" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "text" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "varchar" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL internal "name" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "citext" type for the citext module. + + See https://www.postgresql.org/docs/current/static/citext.html + + + + Corresponds to the PostgreSQL "char" type. + + + This is an internal field and should normally not be used for regular applications. + + See https://www.postgresql.org/docs/current/static/datatype-text.html + + + + + Corresponds to the PostgreSQL "bytea" type, holding a raw byte string. + + See https://www.postgresql.org/docs/current/static/datatype-binary.html + + + + Corresponds to the PostgreSQL "date" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "interval" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the obsolete PostgreSQL "abstime" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "inet" type. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "cidr" type, a field storing an IPv4 or IPv6 network. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr" type, a field storing a 6-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr8" type, a field storing a 6-byte or 8-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "bit" type. + + See https://www.postgresql.org/docs/current/static/datatype-bit.html + + + + Corresponds to the PostgreSQL "varbit" type, a field storing a variable-length string of bits. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL "tsvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "tsquery" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "regconfig" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "uuid" type. + + See https://www.postgresql.org/docs/current/static/datatype-uuid.html + + + + Corresponds to the PostgreSQL "xml" type. + + See https://www.postgresql.org/docs/current/static/datatype-xml.html + + + + Corresponds to the PostgreSQL "json" type, a field storing JSON in text format. + + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonb" type, a field storing JSON in an optimized binary. + format. + + + Supported since PostgreSQL 9.4. + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonpath" type, a field storing JSON path in text format. + format. + + + Supported since PostgreSQL 12. + See https://www.postgresql.org/docs/current/datatype-json.html#DATATYPE-JSONPATH + + + + + Corresponds to the PostgreSQL "hstore" type, a dictionary of string key-value pairs. + + See https://www.postgresql.org/docs/current/static/hstore.html + + + + Corresponds to the PostgreSQL "refcursor" type. + + + + + Corresponds to the PostgreSQL internal "oidvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL internal "int2vector" type. + + + + + Corresponds to the PostgreSQL "oid" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid8" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "cid" type, an internal command identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "regtype" type, a numeric (OID) ID of a type in the pg_type table. + + + + + Corresponds to the PostgreSQL "tid" type, a tuple id identifying the physical location of a row within its table. + + + + + Corresponds to the PostgreSQL "pg_lsn" type, which can be used to store LSN (Log Sequence Number) data which + is a pointer to a location in the WAL. + + + See: https://www.postgresql.org/docs/current/datatype-pg-lsn.html and + https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=7d03a83f4d0736ba869fa6f93973f7623a27038a + + + + + A special value that can be used to send parameter values to the database without + specifying their type, allowing the database to cast them to another value based on context. + The value will be converted to a string and send as text. + + + This value shouldn't ordinarily be used, and makes sense only when sending a data type + unsupported by Npgsql. + + + + + The geometry type for PostgreSQL spatial extension PostGIS. + + + + + The geography (geodetic) type for PostgreSQL spatial extension PostGIS. + + + + + The PostgreSQL ltree type, each value is a label path "a.label.tree.value", forming a tree in a set. + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL lquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL ltxtquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + Corresponds to the PostgreSQL "int4range" type. + + + + + Corresponds to the PostgreSQL "int8range" type. + + + + + Corresponds to the PostgreSQL "numrange" type. + + + + + Corresponds to the PostgreSQL "tsrange" type. + + + + + Corresponds to the PostgreSQL "tstzrange" type. + + + + + Corresponds to the PostgreSQL "daterange" type. + + + + + Corresponds to the PostgreSQL "int4multirange" type. + + + + + Corresponds to the PostgreSQL "int8multirange" type. + + + + + Corresponds to the PostgreSQL "nummultirange" type. + + + + + Corresponds to the PostgreSQL "tsmultirange" type. + + + + + Corresponds to the PostgreSQL "tstzmultirange" type. + + + + + Corresponds to the PostgreSQL "datemultirange" type. + + + + + Corresponds to the PostgreSQL "array" type, a variable-length multidimensional array of + another type. This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Array | NpgsqlDbType.Integer) + + See https://www.postgresql.org/docs/current/static/arrays.html + + + + Corresponds to the PostgreSQL "range" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Range | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 9.2. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Corresponds to the PostgreSQL "multirange" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Multirange | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 14. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + Can return null when a custom range type is used. + + + Can return null when a plugin type or custom range type is used. + + + Should not be used with display names, first normalize it instead. + + + + A raw representation of the PostgreSQL interval datatype. Use only when or NodaTime + Period do not have sufficient range to handle your values. + + +

+ See https://www.postgresql.org/docs/current/static/datatype-geometric.html. +

+

+ Do not use this type unless you have to: prefer or NodaTime + Period when possible. +

+
+
+ + + Constructs an . + + + + + Months and years, after time for alignment. + + + + + Days, after time for alignment. + + + + + Remaining time unit smaller than a day, in microseconds. + + + + + + + + + + + + + + Wraps a PostgreSQL Write-Ahead Log Sequence Number (see: https://www.postgresql.org/docs/current/datatype-pg-lsn.html) + + + Log Sequence Numbers are a fundamental concept of the PostgreSQL Write-Ahead Log and by that of + PostgreSQL replication. See https://www.postgresql.org/docs/current/wal-internals.html for what they represent. + + This struct provides conversions from/to and and beyond that tries to port + the methods and operators in https://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/utils/adt/pg_lsn.c + but nothing more. + + + + + Zero is used indicate an invalid Log Sequence Number. No XLOG record can begin at zero. + + + + + Initializes a new instance of . + + The value to wrap. + + + + Returns a value indicating whether this instance is equal to a specified + instance. + + A instance to compare to this instance. + if the current instance is equal to the value parameter; + otherwise, . + + + + Compares this instance to a specified and returns an indication of their + relative values. + + A instance to compare to this instance. + A signed number indicating the relative values of this instance and . + + + + Returns a value indicating whether this instance is equal to a specified object. + + An object to compare to this instance + if the current instance is equal to the value parameter; + otherwise, . + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Converts the numeric value of this instance to its equivalent string representation. + + The string representation of the value of this instance, consisting of two hexadecimal numbers of + up to 8 digits each, separated by a slash + + + + Converts the string representation of a Log Sequence Number to a instance. + + A string that represents the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + The parameter is . + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Converts the span representation of a Log Sequence Number to a instance. + + A span containing the characters that represent the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Tries to convert the string representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A string that represents the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is or , is not in the right format, or represents a number + less than or greater than . This parameter is + passed uninitialized; any value originally supplied in result will be overwritten. + + + if c> was converted successfully; otherwise, . + + + + + Tries to convert the span representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A span containing the characters that represent the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is empty, is not in the right format, or represents a number less than + or greater than . This parameter is passed + uninitialized; any value originally supplied in result will be overwritten. + + + if was converted successfully; otherwise, . + + + + Converts the value of a 64-bit unsigned integer to a instance. + + A 64-bit unsigned integer. + A new instance of initialized to . + + + + Converts the value of a instance to a 64-bit unsigned integer value. + + A instance + The contents of as 64-bit unsigned integer. + + + + Returns a value that indicates whether two specified instances of are equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if equals ; otherwise, . + + + + + Returns a value that indicates whether two specified instances of are not + equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if does not equal ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than + another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is less than + another specified instance. + + The first value to compare. + The second value to compare. + + if is less than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than or equal to ; + otherwise, . + + + + + Returns the larger of two values. + + The first value to compare. + The second value to compare. + + The larger of the two values. + + + + + Returns the smaller of two values. + + The first value to compare. + The second value to compare. + + The smaller of the two values. + + + + + Returns a value indicating whether a specified instance is less than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is less than or equal to ; + otherwise, . + + + + + Subtracts two specified values. + + The first value. + The second value. + The number of bytes separating those write-ahead log locations. + + + + Subtract the number of bytes from a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to subtract. + A new instance. + + The resulting instance would represent a number less than + . + + + + + Add the number of bytes to a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to add. + A new instance. + + The resulting instance would represent a number greater than + . + + + + + Represents a PostgreSQL range type. + + The element type of the values in the range. + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Defined by PostgreSQL to represent an empty range. + + + + + Defined by PostgreSQL to represent an infinite lower bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an infinite upper bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an null bound. + Some element types may have specific handling for this value distinct from an infinite or missing value. + + + + + Defined by PostgreSQL to represent a lower inclusive bound. + + + + + Defined by PostgreSQL to represent a lower exclusive bound. + + + + + Defined by PostgreSQL to represent an upper inclusive bound. + + + + + Defined by PostgreSQL to represent an upper exclusive bound. + + + + + Defined by PostgreSQL to separate the values for the upper and lower bounds. + + + + + The used by to convert bounds into . + + + + + True if implements ; otherwise, false. + + + + + Represents the empty range. This field is read-only. + + + + + The lower bound of the range. Only valid when is false. + + + + + The upper bound of the range. Only valid when is false. + + + + + The characteristics of the boundaries. + + + + + True if the lower bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the range is empty; otherwise, false. + + + + + Constructs an with inclusive and definite bounds. + + The lower bound of the range. + The upper bound of the range. + + + + Constructs an with definite bounds. + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + + + Attempts to determine if the range is malformed or implicitly empty. + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + True if the range is implicitly empty; otherwise, false. + + + + + Evaluates the boundary flags. + + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + The boundary characteristics. + + + + + Indicates whether the on the left is equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is equal to the on the right; otherwise, false. + + + + + Indicates whether the on the left is not equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is not equal to the on the right; otherwise, false. + + + + + + + + + + + + + + + + + Parses the well-known text representation of a PostgreSQL range type into a . + + A PosgreSQL range type in a well-known text format. + + The represented by the . + + + Malformed range literal. + + + Malformed range literal. Missing left parenthesis or bracket. + + + Malformed range literal. Missing right parenthesis or bracket. + + + Malformed range literal. Missing comma after lower bound. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Represents a type converter for . + + + + + Adds a to the closed form . + + + + + + + + + + + + + + + + + Represents characteristics of range type boundaries. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + The default flag. The range is not empty and has boundaries that are definite and exclusive. + + + + + The range is empty. E.g. '(0,0)', 'empty'. + + + + + The lower bound is inclusive. E.g. '[0,5]', '[0,5)', '[0,)'. + + + + + The upper bound is inclusive. E.g. '[0,5]', '(0,5]', '(,5]'. + + + + + The lower bound is infinite or indefinite. E.g. '(null,5]', '(-infinity,5]', '(,5]'. + + + + + The upper bound is infinite or indefinite. E.g. '[0,null)', '[0,infinity)', '[0,)'. + + + + + Both the lower and upper bounds are inclusive. + + + + + Both the lower and upper bounds are indefinite. + + + + + The lower bound is both inclusive and indefinite. This represents an error condition. + + + + + The upper bound is both inclusive and indefinite. This represents an error condition. + + + + + Represents a PostgreSQL tsquery. This is the base class for the + lexeme, not, or, and, and "followed by" nodes. + + + + + Node kind + + + + + NodeKind + + + + + Represents the empty tsquery. Should only be used at top level. + + + + + Lexeme + + + + + Not operator + + + + + And operator + + + + + Or operator + + + + + "Followed by" operator + + + + + Constructs an . + + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Parses a tsquery in PostgreSQL's text format. + + + + + + + + + + + + + Returns a value indicating whether this instance and a specified object represent the same value. + + An object to compare to this instance. + if g is equal to this instance; otherwise, . + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + if and are equal; otherwise, . + + + + Indicates whether the values of two specified objects are not equal. + + The first object to compare. + The second object to compare. + if and are not equal; otherwise, . + + + + TsQuery Lexeme node. + + + + + Lexeme text. + + + + + Weights is a bitmask of the Weight enum. + + + + + Prefix search. + + + + + Creates a tsquery lexeme with only lexeme text. + + Lexeme text. + + + + Creates a tsquery lexeme with lexeme text and weights. + + Lexeme text. + Bitmask of enum Weight. + + + + Creates a tsquery lexeme with lexeme text, weights and prefix search flag. + + Lexeme text. + Bitmask of enum Weight. + Is prefix search? + + + + Weight enum, can be OR'ed together. + + + + + None + + + + + D + + + + + C + + + + + B + + + + + A + + + + + + + + + + + TsQuery Not node. + + + + + Child node + + + + + Creates a not operator, with a given child node. + + + + + + + + + + + + Base class for TsQuery binary operators (& and |). + + + + + Left child + + + + + Right child + + + + + Constructs a . + + + + + TsQuery And node. + + + + + Creates an and operator, with two given child nodes. + + + + + + + + + + + + + TsQuery Or Node. + + + + + Creates an or operator, with two given child nodes. + + + + + + + + + + + + + TsQuery "Followed by" Node. + + + + + The distance between the 2 nodes, in lexemes. + + + + + Creates a "followed by" operator, specifying 2 child nodes and the + distance between them in lexemes. + + + + + + + + + + + + + + Represents an empty tsquery. Shold only be used as top node. + + + + + Creates a tsquery that represents an empty query. Should not be used as child node. + + + + + + + + + + + Represents a PostgreSQL tsvector. + + + + + Parses a tsvector in PostgreSQL's text format. + + + + + + + Returns the lexeme at a specific index + + + + + + + Gets the number of lexemes. + + + + + Returns an enumerator. + + + + + + Returns an enumerator. + + + + + + Gets a string representation in PostgreSQL's format. + + + + + + + + + + + + + + + Represents a lexeme. A lexeme consists of a text string and optional word entry positions. + + + + + Gets or sets the text. + + + + + Creates a lexeme with no word entry positions. + + + + + + Creates a lexeme with word entry positions. + + + + + + + Gets a word entry position. + + + + + + + Gets the number of word entry positions. + + + + + Creates a string representation in PostgreSQL's format. + + + + + + Represents a word entry position and an optional weight. + + + + + Creates a WordEntryPos with a given position and weight. + + Position values can range from 1 to 16383; larger numbers are silently set to 16383. + A weight labeled between A and D. + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + The position is a 14-bit unsigned integer indicating the position in the text this lexeme occurs. Cannot be 0. + + + + + Prints this lexeme in PostgreSQL's format, i.e. position is followed by weight (weight is only printed if A, B or C). + + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + D, the default + + + + + C + + + + + B + + + + + A + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + Represents a PostgreSQL point type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL line type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Line Segment type. + + + + + Represents a PostgreSQL box type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Path type. + + + + + Represents a PostgreSQL Polygon type. + + + + + Represents a PostgreSQL Circle type. + + + + + Represents a PostgreSQL inet type, which is a combination of an IPAddress and a subnet mask. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL cidr type. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL tid value + + + https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + + Block number + + + + + Tuple index within block + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + + + + The name of PostgreSQL field that corresponds to this CLR property or field + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + The name of PostgreSQL field that corresponds to this CLR property or field + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + +
+
diff --git a/packages/Npgsql.8.0.3/lib/net8.0/Npgsql.dll b/packages/Npgsql.8.0.3/lib/net8.0/Npgsql.dll new file mode 100644 index 0000000..b19e58f Binary files /dev/null and b/packages/Npgsql.8.0.3/lib/net8.0/Npgsql.dll differ diff --git a/packages/Npgsql.8.0.3/lib/net8.0/Npgsql.xml b/packages/Npgsql.8.0.3/lib/net8.0/Npgsql.xml new file mode 100644 index 0000000..738cae2 --- /dev/null +++ b/packages/Npgsql.8.0.3/lib/net8.0/Npgsql.xml @@ -0,0 +1,11410 @@ + + + + Npgsql + + + + + Note that this message doesn't actually contain the data, but only the length. Data is processed + directly from the connector's buffer. + + + + + DataRow is special in that it does not parse the actual contents of the backend message, + because in sequential mode the message will be traversed and processed sequentially by + . + + + + + Error and notice message field codes + + + + + A RowDescription message sent from the backend. + + + See https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + A descriptive record on a single field received from PostgreSQL. + See RowDescription in https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + The field name. + + + + + The object ID of the field's data type. + + + + + The data type size (see pg_type.typlen). Note that negative values denote variable-width types. + + + + + The type modifier (see pg_attribute.atttypmod). The meaning of the modifier is type-specific. + + + + + If the field can be identified as a column of a specific table, the object ID of the table; otherwise zero. + + + + + If the field can be identified as a column of a specific table, the attribute number of the column; otherwise zero. + + + + + The format code being used for the field. + Currently will be text or binary. + In a RowDescription returned from the statement variant of Describe, the format code is not yet known and will always be zero. + + + + + Returns a string that represents the current object. + + + + + Base class for all classes which represent a message sent by the PostgreSQL backend. + + + + + Specifies the type of SQL statement, e.g. SELECT + + + + Streaming + + + Entire value should be buffered + + + Fixed size value should be buffered + + + Custom requirements + + + + CompositeFieldInfo constructor. + + Name of the field. + Type info for reading/writing. + The nominal field type, this may differ from the typeInfo.PgTypeId when the field is a domain type. + + + + Create temporary storage for all values that come before the constructor parameters can be saturated. + + + + + A reference to the type that houses the static method points to. + The continuation + + + A reference to the type that houses the static method points to. + The continuation + + + Note that for BIT(1), this resolver will return a bool by default, to align with SqlClient + (see discussion https://github.com/npgsql/npgsql/pull/362#issuecomment-59622101). + + + A converter to map strongly typed apis onto boxed converter results to produce a strongly typed converter over T. + + + Special value converter to be able to use struct converters as System.Nullable converters, it delegates all behavior to the effective converter. + + + Big endian array of numeric digits + + + + + + + If the destination ends up being too small the builder allocates instead + + + + + + + + + Whether the input consists of any non zero bits + + + Adapted from BigInteger, to allow us to operate directly on stack allocated bits + + + + Hacky temporary measure used by EFCore.PG to extract user-configured enum mappings. Accessed via reflection only. + + + + + A factory which get generate instances of , which describe a database + and the types it contains. When first connecting to a database, Npgsql will attempt to load information + about it via this factory. + + + + + Given a connection, loads all necessary information about the connected database, e.g. its types. + A factory should only handle the exact database type it was meant for, and return null otherwise. + + + An object describing the database to which is connected, or null if the + database isn't of the correct type and isn't handled by this factory. + + + + + An Npgsql resolver for type info. Used by Npgsql to read and write values to PostgreSQL. + + + + + Resolve a type info for a given type and data type name, at least one value will be non-null. + + The clr type being requested. + The postgres type being requested. + Used for configuration state and Npgsql type info or PostgreSQL type catalog lookups. + A result, or null if there was no match. + + + + Represents a connection to a PostgreSQL backend. Unlike NpgsqlConnection objects, which are + exposed to users, connectors are internal to Npgsql and are recycled by the connection pool. + + + + + The physical connection socket to the backend. + + + + + The physical connection stream to the backend, without anything on top. + + + + + The physical connection stream to the backend, layered with an SSL/TLS stream if in secure mode. + + + + + The parsed connection string. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + Buffer used for reading data. + + + + + If we read a data row that's bigger than , we allocate an oversize buffer. + The original (smaller) buffer is stored here, and restored when the connection is reset. + + + + + Buffer used for writing data. + + + + + The secret key of the backend for this connector, used for query cancellation. + + + + + The process ID of the backend for this connector. + + + + + The user name that has been inferred when the connector was opened + + + + + A unique ID identifying this connector, used for logging. Currently mapped to BackendProcessId + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + The current transaction status for this connector. + + + + + A transaction object for this connector. Since only one transaction can be in progress at any given time, + this instance is recycled. To check whether a transaction is currently in progress on this connector, + see . + + + + + The NpgsqlConnection that (currently) owns this connector. Null if the connector isn't + owned (i.e. idle in the pool) + + + + + The number of messages that were prepended to the current message chain, but not yet sent. + Note that this only tracks messages which produce a ReadyForQuery message + + + + + A ManualResetEventSlim used to make sure a cancellation request doesn't run + while we're reading responses for the prepended query + as we can't gracefully handle their cancellation. + + + + + If the connector is currently in COPY mode, holds a reference to the importer/exporter object. + Otherwise null. + + + + + Holds all run-time parameters received from the backend (via ParameterStatus messages) + + + + + Holds all run-time parameters in raw, binary format for efficient handling without allocations. + + + + + If this connector was broken, this contains the exception that caused the break. + + + + + + Used by the pool to indicate that I/O is currently in progress on this connector, so that another write + isn't started concurrently. Note that since we have only one write loop, this is only ever usedto + protect against an over-capacity writes into a connector that's currently *asynchronously* writing. + + + It is guaranteed that the currently-executing + Specifically, reading may occur - and the connector may even be returned to the pool - before this is + released. + + + + + + + + + + + + A lock that's taken while a cancellation is being delivered; new queries are blocked until the + cancellation is delivered. This reduces the chance that a cancellation meant for a previous + command will accidentally cancel a later one, see #615. + + + + + A lock that's taken to make sure no other concurrent operation is running. + Break takes it to set the state of the connector. + Anyone else should immediately check the state and exit + if the connector is closed. + + + + + A lock that's used to wait for the Cleanup to complete while breaking the connection. + + + + + The command currently being executed by the connector, null otherwise. + Used only for concurrent use error reporting purposes. + + + + + The connector source (e.g. pool) from where this connector came, and to which it will be returned. + Note that in multi-host scenarios, this references the host-specific rather than the + . + + + + + Contains the UTC timestamp when this connector was opened, used to implement + . + + + + + The minimum timeout that can be set on internal commands such as COMMIT, ROLLBACK. + + Precision is seconds + + + + Gets the current state of the connector + + + + + Returns whether the connector is open, regardless of any task it is currently performing + + + + + Opens the physical connection to the server. + + Usually called by the RequestConnector + Method of the connection pool manager. + + + + Prepends a message to be sent at the beginning of the next message chain. + + + + + Reads backend messages and discards them, stopping only after a message of the given type has + been seen. Only a sync I/O version of this method exists - in async flows we inline the loop + rather than calling an additional async method, in order to avoid the overhead. + + + + + Handles a new transaction indicator received on a ReadyForQuery message + + + + + Returns whether SSL is being used for the connection + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Creates another connector and sends a cancel request through it for this connector. This method never throws, but returns + whether the cancellation attempt failed. + + + + if the cancellation request was successfully delivered, or if it was skipped because a previous + request was already sent. if the cancellation request could not be delivered because of an exception + (the method logs internally). + + + This does not indicate whether the cancellation attempt was successful on the PostgreSQL side - only if the request was + delivered. + + + + + + Starts a new cancellable operation within an ongoing user action. This should only be used if a single user + action spans several different actions which each has its own cancellation tokens. For example, a command + execution is a single user action, but spans ExecuteReaderQuery, NextResult, Read and so forth. + + + Only one level of nested operations is supported. It is an error to call this method if it has previously + been called, and the returned was not disposed. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the + cancellation, and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or + a timeout occurs, followed by a client-side socket cancellation once + has elapsed. If , + PostgreSQL cancellation will be skipped and client-socket cancellation will occur immediately. + + + + + Closes ongoing operations, i.e. an open reader exists or a COPY operation still in progress, as + part of a connection close. + + + + + Called when an unexpected message has been received during an action. Breaks the + connector and returns the appropriate message. + + + + + Called when a connector becomes completely unusable, e.g. when an unexpected I/O exception is raised or when + we lose protocol sync. + Note that fatal errors during the Open phase do *not* pass through here. + + The exception that caused the break. + The exception given in for chaining calls. + + + + Closes the socket and cleans up client-side resources associated with this connector. + + + This method doesn't actually perform any meaningful I/O, and therefore is sync-only. + + + + + Called when a pooled connection is closed, and its connector is returned to the pool. + Resets the connector back to its initial state, releasing server-side sources + (e.g. prepared statements), resetting parameters to their defaults, and resetting client-side + state + + + + + The connector may have allocated an oversize read buffer, to hold big rows in non-sequential reading. + This switches us back to the original one and returns the buffer to . + + + + + Starts a user action. This makes sure that another action isn't already in progress, handles synchronization with keepalive, + and sets up cancellation. + + The new state to be set when entering this user action. + + The that is starting execution - if an is + thrown, it will reference this. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the cancellation, + and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or a timeout + occurs, followed by a client-side socket cancellation once has + elapsed. If , PostgreSQL cancellation will be skipped and client-socket cancellation will occur + immediately. + + + + + An IDisposable wrapper around . + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Creates and returns a object associated with the . + + The text of the query. + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + Expresses the exact state of a connector. + + + + + The connector has either not yet been opened or has been closed. + + + + + The connector is currently connecting to a PostgreSQL server. + + + + + The connector is connected and may be used to send a new query. + + + + + The connector is waiting for a response to a query which has been sent to the server. + + + + + The connector is currently fetching and processing query results. + + + + + The connector is currently waiting for asynchronous notifications to arrive. + + + + + The connection was broken because an unexpected error occurred which left it in an unknown state. + This state isn't implemented yet. + + + + + The connector is engaged in a COPY operation. + + + + + The connector is engaged in streaming replication. + + + + + Currently not in a transaction block + + + + + Currently in a transaction block + + + + + Currently in a failed transaction block (queries will be rejected until block is ended) + + + + + A new transaction has been requested but not yet transmitted to the backend. It will be transmitted + prepended to the next query. + This is a client-side state option only, and is never transmitted from the backend. + + + + + Specifies how to load/parse DataRow messages as they're received from the backend. + + + + + Load DataRows in non-sequential mode + + + + + Load DataRows in sequential mode + + + + + Skip DataRow messages altogether + + + + + Base class for implementations which provide information about PostgreSQL and PostgreSQL-like databases + (e.g. type definitions, capabilities...). + + + + + The hostname of IP address of the database. + + + + + The TCP port of the database. + + + + + The database name. + + + + + The version of the PostgreSQL database we're connected to, as reported in the "server_version" parameter. + Exposed via . + + + + + The PostgreSQL version string as returned by the server_version option. Populated during loading. + + + + + Whether the backend supports range types. + + + + + Whether the backend supports multirange types. + + + + + Whether the backend supports enum types. + + + + + Whether the backend supports the CLOSE ALL statement. + + + + + Whether the backend supports advisory locks. + + + + + Whether the backend supports the DISCARD SEQUENCES statement. + + + + + Whether the backend supports the UNLISTEN statement. + + + + + Whether the backend supports the DISCARD TEMP statement. + + + + + Whether the backend supports the DISCARD statement. + + + + + Reports whether the backend uses the newer integer timestamp representation. + + + + + Whether the database supports transactions. + + + + + Indexes backend types by their type OID. + + + + + Indexes backend types by their PostgreSQL internal name, including namespace (e.g. pg_catalog.int4). + Only used for enums and composites. + + + + + Indexes backend types by their PostgreSQL name, not including namespace. + If more than one type exists with the same name (i.e. in different namespaces) this + table will contain an entry with a null value. + Only used for enums and composites. + + + + + Initializes the instance of . + + + + + Initializes the instance of . + + + + + Provides all PostgreSQL types detected in this database. + + + + + + Parses a PostgreSQL server version (e.g. 10.1, 9.6.3) and returns a CLR Version. + + + + + Registers a new database info factory, which is used to load information about databases. + + + + + A buffer used by Npgsql to read data from the socket efficiently. + Provides methods which decode different values types and tracks the current position. + + + + + Timeout for sync and async reads + + + + + The total byte length of the buffer. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + The minimum buffer size possible. + + + + + Ensures that bytes are available in the buffer, and if + not, reads from the socket until enough is available. + + + + + Does not perform any I/O - assuming that the bytes to be skipped are in the memory buffer. + + + + + Skip a given number of bytes. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. If any character could not be decoded, a question + mark character is returned instead of throwing an exception. + + + + + Seeks the first null terminator (\0) and returns the string up to it. Reads additional data from the network if a null + terminator isn't found in the buffered data. + + + + Does not throw ODE. + + + + A buffer used by Npgsql to write data to the socket efficiently. + Provides methods which encode different values types and tracks the current position. + + + + + Timeout for sync and async writes + + + + + The total byte length of the buffer. + + + + + The minimum buffer size possible. + + + + + Returns all contents currently written to the buffer (but not flushed). + Useful for pre-generating messages. + + + + + Whether this converter can handle the given format and with which buffer requirements. + + The data format. + Returns the buffer requirements. + Returns true if the given data format is supported. + The buffer requirements should not cover database NULL reads or writes, these are handled by the caller. + + + Never DbNull (struct types) + + + DbNull when *user code* + + + DbNull when value is null + + + DbNull when value is null or DBNull + + + + Gets the appropriate converter solely based on PgTypeId. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to read with based on the given field info. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to write with based on the given value. + + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are + cached once used. Array or other collection converters depend on this to cache their own converter - which wraps the element + converter - with the cache key being the element converter reference. + + + + ReadBytes without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + ReadBytesAsync without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + + + + + The stream length, if any + + + + Used by GetSchema to be able to attempt to resolve all type catalog types without exceptions. + + + + Whether options should return a portable identifier (data type name) to prevent any generated id (oid) confusion across backends, this comes with a perf penalty. + + + A reference to the type that houses the static method points to. + The continuation + + + Throws if the instance is a PgResolverTypeInfo. + + + When result is null, the value was interpreted to be a SQL NULL. + + + When result is null or DBNull, the value was interpreted to be a SQL NULL. + + + Whether Converter.TypeToConvert matches PgTypeInfo.Type, if it doesn't object apis should be used. + + + + Gets a that can be used to write to the underlying buffer. + + Blocking flushes during writes that were expected to be non-blocking and vice versa cause an exception to be thrown unless allowMixedIO is set to true, false by default. + The stream. + + + + Represents the fully-qualified name of a PostgreSQL type. + + + + + The maximum length of names in an unmodified PostgreSQL installation. + + + We need to respect this to get to valid names when deriving them (for multirange/arrays etc). + This does not include the namespace. + + + + + Well-known PostgreSQL data type names. + + + + Base field type shared between tables and composites. + + + + A discriminated union of and . + + + + + + + + + + When this flag is true, and both type and pgTypeId are non null, a default info for the pgTypeId can be returned if an exact match + can't be found. + + + + + + + + + + + + Signals whether a resolver based TypeInfo can keep its PgTypeId undecided or whether it should follow mapping.DataTypeName. + + + + Match when the clr type and datatype name both match. + It's also the only requirement that participates in clr type fallback matching. + + + Match when the datatype name or CLR type matches while the other also matches or is absent. + + + Match when the datatype name matches and the clr type also matches or is absent. + + + A factory for well-known PgConverters. + + + Returns the first default converter or the first converter that matches both type and dataTypeName. + If just a type was passed and no default was found we return the first converter with a type match. + + + Returns whether type matches any of the types we register pg arrays as. + + + + Launches MIT Kerberos klist and parses out the default principal from it. + Caches the result. + + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A component which translates a CLR name (e.g. SomeClass) into a database name (e.g. some_class) + according to some scheme. + Used for mapping enum and composite types. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which preserves CLR names (e.g. SomeClass) when mapping names to the database. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which converts standard CLR names (e.g. SomeClass) to snake-case database + names (some_class) + + + + + Creates a new . + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Creates a new . + + + Uses the legacy naming convention if , otherwise it uses the new naming convention. + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + Converts a string to its snake_case equivalent. + + The value to convert. + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Controls whether to place error barriers between all batch commands within this batch. Default to . + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Enabling error barriers ensures that errors do not affect other commands in the batch. + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message between each command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + To control error barriers on a command-by-command basis, see . + + + + + + Marks all of the batch's result columns as either known or unknown. + Unknown results column are requested them from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Initializes a new . + + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Appends an error barrier after this batch command. Defaults to the value of on the + batch. + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Appending an error barrier ensures that errors from this command (or previous ones) won't cause later commands to be skipped, + and that errors from later commands won't cause this command (or previous ones) to be rolled back). + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message after this command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + Controlling error barriers on a command-by-command basis is an advanced feature, consider enabling error barriers for the entire + batch via . + + + + + + The number of rows affected or retrieved. + + + See the command tag in the CommandComplete message for the meaning of this value for each , + https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + + + + Specifies the type of query, e.g. SELECT. + + + + + For an INSERT, the object ID of the inserted row if is 1 and + the target table has OIDs; otherwise 0. + + + + + The SQL as it will be sent to PostgreSQL, after any rewriting performed by Npgsql (e.g. named to positional parameter + placeholders). + + + + + The list of parameters, ordered positionally, as it will be sent to PostgreSQL. + + + If the user provided positional parameters, this references the (in batching mode) or the list + backing (in non-batching) mode. If the user provided named parameters, this is a + separate list containing the re-ordered parameters. + + + + + The RowDescription message for this query. If null, the query does not return rows (e.g. INSERT) + + + + + If this statement has been automatically prepared, references the . + Null otherwise. + + + + + Holds the server-side (prepared) ASCII statement name. Empty string for non-prepared statements. + + + + + Whether this statement has already been prepared (including automatic preparation). + + + + + Returns a prepared statement for this statement (including automatic preparation). + + + + + Initializes a new . + + + + + Initializes a new . + + The text of the . + + + + Returns the . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides an API for a binary COPY TO operation, a high-performance data export mechanism from + a PostgreSQL table. Initiated by + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be read. + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be read. + The value of the column + + + + Returns whether the current column is null. + + + + + Skips the current column without interpreting its value. + + + + + Skips the current column without interpreting its value. + + + + + Cancels an ongoing export. + + + + + Async cancels an ongoing export. + + + + + Completes that binary export and sets the connection back to idle state + + + + + Async completes that binary export and sets the connection back to idle state + + + + + + Provides an API for a binary COPY FROM operation, a high-performance data import mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The number of columns in the current (not-yet-written) row. + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Writes a single column in the current row. + + The value to be written + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row. + + The value to be written + + An optional token to cancel the asynchronous operation. The default value is . + + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single null column value. + + + + + Writes a single null column value. + + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + An array of column values to be written as a single row + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + + An optional token to cancel the asynchronous operation. The default value is . + + An array of column values to be written as a single row + + + + Completes the import operation. The writer is unusable after this operation. + + + + + Completes the import operation. The writer is unusable after this operation. + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + Represents a SQL statement or function (stored procedure) to execute + against a PostgreSQL database. This class cannot be inherited. + + + + + If this command is (explicitly) prepared, references the connector on which the preparation happened. + Used to detect when the connector was changed (i.e. connection open/close), meaning that the command + is no longer prepared. + + + + + Whether this is wrapped by an . + + + + + Returns details about each statement that this command has executed. + Is only populated when an Execute* method is called. + + + + + Whether this command is cached by and returned by . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the text of the query. + + The text of the query. + + + + Initializes a new instance of the class with the text of the query and a + . + + The text of the query. + A that represents the connection to a PostgreSQL server. + + + + Initializes a new instance of the class with the text of the query, a + , and the . + + The text of the query. + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + Used when this instance is wrapped inside an . + + + + + Used when this instance is wrapped inside an . + + + + + Gets or sets the SQL statement or function (stored procedure) to execute at the data source. + + The SQL statement or function (stored procedure) to execute. The default is an empty string. + + + + Gets or sets the wait time (in seconds) before terminating the attempt to execute a command and generating an error. + + The time (in seconds) to wait for the command to execute. The default value is 30 seconds. + + + + Gets or sets a value indicating how the property is to be interpreted. + + + One of the values. The default is . + + + + + DB connection. + + + + + Gets or sets the used by this instance of the . + + The connection to a data source. The default value is . + + + + Design time visible. + + + + + Gets or sets how command results are applied to the DataRow when used by the + DbDataAdapter.Update(DataSet) method. + + One of the values. + + + + Returns whether this query will execute as a prepared (compiled) query. + + + + + Marks all of the query's result columns as either known or unknown. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Marks the query's result columns as known or unknown, on a column-by-column basis. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + If the query includes several queries (e.g. SELECT 1; SELECT 2), this will only apply to the first + one. The rest of the queries will be fetched and parsed as usual. + + The array size must correspond exactly to the number of result columns the query returns, or an + error will be raised. + + + + + The current state of the command + + + + + Creates a new instance of an object. + + A object. + + + + Creates a new instance of a object. + + An object. + + + + DB parameter collection. + + + + + Gets the . + + The parameters of the SQL statement or function (stored procedure). The default is an empty collection. + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Executes a SQL statement against the connection and returns the number of rows affected. + + The number of rows affected if known; -1 otherwise. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the number of rows affected if known; -1 otherwise. + + + + Executes the query, and returns the first column of the first row + in the result set returned by the query. Extra columns or rows are ignored. + + The first column of the first row in the result set, + or a null reference if the result set is empty. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the first column of the + first row in the result set, or a null reference if the result set is empty. + + + + Executes the command text against the connection. + + A task representing the operation. + + + + Executes the command text against the connection. + + An instance of . + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + A task representing the operation. + + + + An asynchronous version of , which executes + the against the + and returns a . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + An asynchronous version of , + which executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + DB transaction. + + + + + This property is ignored by Npgsql. PostgreSQL only supports a single transaction at a given time on + a given connection, and all commands implicitly run inside the current transaction started via + + + + + + Attempts to cancel the execution of an . + + As per the specs, no exception will be thrown by this method in case of failure. + + + + + + + Fixes up the text/binary flag on result columns. + Since Prepare() describes a statement rather than a portal, the resulting RowDescription + will have text format on all result columns. Fix that up. + + + Note that UnknownResultTypeList only applies to the first query, while AllResultTypesAreUnknown applies + to all of them. + + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + This event is unsupported by Npgsql. Use instead. + + + + + This class creates database commands for automatic insert, update and delete operations. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The adapter. + + + + Gets or sets the beginning character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The beginning character or characters to use. The default is an empty string. + + + + + + + + Gets or sets the ending character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The ending character or characters to use. The default is an empty string. + + + + + + + + + This method is responsible to derive the command parameter list with values obtained from function definition. + It clears the Parameters collection of command. Also, if there is any parameter type which is not supported by Npgsql, an InvalidOperationException will be thrown. + Parameters name will be parameter1, parameter2, ... for CommandType.StoredProcedure and named after the placeholder for CommandType.Text + + NpgsqlCommand whose function parameters will be obtained. + + + + Gets the automatically generated object required + to perform insertions at the data source. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated object required to perform insertions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform updates at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform updates. + + + + + Gets the automatically generated object required to perform updates + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform updates. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform deletions at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform deletions. + + + + + Gets the automatically generated object required to perform deletions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform deletions. + + + + + Applies the parameter information. + + The parameter. + The row. + Type of the statement. + If set to [where clause]. + + + + Returns the name of the specified parameter in the format of @p#. + + The number to be included as part of the parameter's name.. + + The name of the parameter with the specified number appended as part of the parameter name. + + + + + Returns the full parameter name, given the partial parameter name. + + The partial name of the parameter. + + The full parameter name corresponding to the partial parameter name requested. + + + + + Returns the placeholder for the parameter in the associated SQL statement. + + The number to be included as part of the parameter's name. + + The name of the parameter with the specified number appended. + + + + + Registers the to handle the event for a . + + The to be used for the update. + + + + Adds an event handler for the event. + + The sender + A instance containing information about the event. + + + + Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier, including properly escaping any embedded quotes in the identifier. + + The original unquoted identifier. + + The quoted version of the identifier. Embedded quotes within the identifier are properly escaped. + + + + + Unquoted identifier parameter cannot be null + + + + Given a quoted identifier, returns the correct unquoted form of that identifier, including properly un-escaping any embedded quotes in the identifier. + + The identifier that will have its embedded quotes removed. + + The unquoted identifier, with embedded quotes properly un-escaped. + + + + + Quoted identifier parameter cannot be null + + + + This class represents a connection to a PostgreSQL server. + + + + + The connection string, without the password after open (unless Persist Security Info=true) + + + + + The original connection string provided by the user, including the password. + + + + + The physical connection to the database. This is when the connection is closed, + and also when it is open in multiplexing mode and unbound (e.g. not in a transaction). + + + + + The parsed connection string. Set only after the connection is opened. + + + + + Flag used to make sure we never double-close a connection, returning it twice to the pool. + + + + + The global type mapper, which contains defaults used by all new connections. + Modify mappings on this mapper to affect your entire application. + + + + + Connection-level type mapping is no longer supported. See the 7.0 release notes for configuring type mapping on NpgsqlDataSource. + + + + + The default TCP/IP port for PostgreSQL. + + + + + Maximum value for connection timeout. + + + + + Tracks when this connection was bound to a physical connector (e.g. at open-time, when a transaction + was started...). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Opens a database connection with the property settings specified by the . + + + + + This is the asynchronous version of . + + + Do not invoke other methods and properties of the object until the returned Task is complete. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + The connection string that includes the server name, + the database name, and other parameters needed to establish + the initial connection. The default value is an empty string. + + + + + Gets or sets the delegate used to generate a password for new database connections. + + +

+ This delegate is executed when a new database connection is opened that requires a password. +

+

+ The and connection + string properties have precedence over this delegate: it will not be executed if a password is specified, or if the specified or + default Passfile contains a valid entry. +

+

+ Due to connection pooling this delegate is only executed when a new physical connection is opened, not when reusing a connection + that was previously opened from the pool. +

+
+
+ + + Backend server host name. + + + + + Backend server port. + + + + + Gets the time (in seconds) to wait while trying to establish a connection + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a connection to open. The default value is 15 seconds. + + + + Gets the time (in seconds) to wait while trying to execute a command + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a command to complete. The default value is 30 seconds. + + + + Gets the name of the current database or the database to be used after a connection is opened. + + The name of the current database or the name of the database to be + used after a connection is opened. The default value is the empty string. + + + + Gets the string identifying the database server (host and port) + + + The name of the database server (host and port). If the connection uses a Unix-domain socket, + the path to that socket is returned. The default value is the empty string. + + + + + User name. + + + + + Gets the current state of the connection. + + A bitwise combination of the values. The default is Closed. + + + + Gets whether the current state of the connection is Open or Closed + + ConnectionState.Open, ConnectionState.Closed or ConnectionState.Connecting + + + + A cached command handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + Creates and returns a + object associated with the . + + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + A cached batch handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + + + + + + + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Begins a database transaction. + + A object representing the new transaction. + + Nested transactions are not supported. + Transactions created by this method will have the isolation level. + + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Asynchronously begins a database transaction. + + The isolation level under which the transaction should run. + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose property is an object representing the new transaction. + + Nested transactions are not supported. + + + + + Asynchronously begins a database transaction. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose Result property is an object representing the new transaction. + + Nested transactions are not supported. + Transactions created by this method will have the isolation level. + + + + + Asynchronously begins a database transaction. + + The isolation level under which the transaction should run. + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose property is an object representing the new transaction. + + Nested transactions are not supported. + + + + + Enlist transaction. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases all resources used by the . + + when called from ; + when being called from the finalizer. + + + + Releases all resources used by the . + + + + + Fires when PostgreSQL notices are received from PostgreSQL. + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + Note that notices are very different from notifications (see the event). + + + + + Fires when PostgreSQL notifications are received from PostgreSQL. + + + PostgreSQL notifications are sent when your connection has registered for notifications on a specific channel via the + LISTEN command. NOTIFY can be used to generate such notifications, allowing for an inter-connection communication channel. + + Note that notifications are very different from notices (see the event). + + + + + Returns whether SSL is being used for the connection. + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Selects the local Secure Sockets Layer (SSL) certificate used for authentication. + + + See + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + + + Cannot be used in conjunction with , and + . + + + See . + + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Reports whether the backend uses the newer integer timestamp representation. + Note that the old floating point representation is not supported. + Meant for use by type plugins (e.g. NodaTime) + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Holds all PostgreSQL parameters received for this connection. Is updated if the values change + (e.g. as a result of a SET command). + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds, passed to . + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value is passed to . + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds. + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value as + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Checks whether the connection is currently bound to a connector, and if so, returns it via + . + + + + + Binds this connection to a physical connector. This happens when opening a non-multiplexing connection, + or when starting a transaction on a multiplexed connection. + + + + + Ends binding scope to the physical connection and returns it to the pool. Only useful with multiplexing on. + + + After this method is called, under no circumstances the physical connection (connector) should ever be used if multiplexing is on. + See #3249. + + + + + Returns the supported collections + + + + + Returns the schema collection specified by the collection name. + + The collection name. + The collection specified. + + + + Returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + The collection specified. + + + + Asynchronously returns the supported collections. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name. + + The collection name. + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Creates a closed connection with the connection string and authentication details of this message. + + + + + Clones this connection, replacing its connection string with the given one. + This allows creating a new connection with the same security information + (password, SSL callbacks) while changing other connection parameters (e.g. + database or pooling) + + + + + This method changes the current database by disconnecting from the actual + database and connecting to the specified. + + The name of the database to use in place of the current database. + + + + DB provider factory. + + + + + Clears the connection pool. All idle physical connections in the pool of the given connection are + immediately closed, and any busy connections which were opened before was called + will be closed when returned to the pool. + + + + + Clear all connection pools. All idle physical connections in all pools are immediately closed, and any busy + connections which were opened before was called will be closed when returned + to their pool. + + + + + Unprepares all prepared statements on this connection. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + This event is unsupported by Npgsql. Use instead. + + + + + The connection is currently not bound to a connector. + + + + + The connection is bound to its connector for the scope of the entire connection + (i.e. non-multiplexed connection). + + + + + The connection is bound to its connector for the scope of a transaction. + + + + + The connection is bound to its connector for the scope of a COPY operation. + + + + + The connection is bound to its connector for the scope of a single reader. + + + + + The connection is bound to its connector for an unspecified, temporary scope; the code that initiated + the binding is also responsible to unbind it. + + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notice information (e.g. message, severity...). + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notification payload. + + + + Represents a method that allows the application to provide a certificate collection to be used for SSL client authentication + + + A to be filled with one or more client + certificates. + + + + + Represents a method that allows the application to provide a password at connection time in code rather than configuration + + Hostname + Port + Database Name + User + A valid password for connecting to the database + + + + Provides a simple way to create and manage the contents of connection strings used by + the class. + + + + + Cached DataSource value to reduce allocations on NpgsqlConnection.DataSource.get + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class. + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class, optionally using ODBC rules for quoting values. + + true to use {} to delimit fields; false to use quotation marks. + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class and sets its . + + + + + GeneratedAction and GeneratedActions exist to be able to produce a streamlined binary footprint for NativeAOT. + An idiomatic approach where each action has its own method would double the binary size of NpgsqlConnectionStringBuilder. + + + + + Gets or sets the value associated with the specified key. + + The key of the item to get or set. + The value associated with the specified key. + + + + Adds an item to the . + + The key-value pair to be added. + + + + Removes the entry with the specified key from the DbConnectionStringBuilder instance. + + The key of the key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Removes the entry from the DbConnectionStringBuilder instance. + + The key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Clears the contents of the instance. + + + + + Determines whether the contains a specific key. + + The key to locate in the . + true if the contains an entry with the specified key; otherwise false. + + + + Determines whether the contains a specific key-value pair. + + The item to locate in the . + true if the contains the entry; otherwise false. + + + + Retrieves a value corresponding to the supplied key from this . + + The key of the item to retrieve. + The value corresponding to the key. + true if keyword was found within the connection string, false otherwise. + + + + The hostname or IP address of the PostgreSQL server to connect to. + + + + + The TCP/IP port of the PostgreSQL server. + + + + + The PostgreSQL database to connect to. + + + + + The username to connect with. + + + + + The password to connect with. + + + + + Path to a PostgreSQL password file (PGPASSFILE), from which the password would be taken. + + + + + The optional application name parameter to be sent to the backend during connection initiation. + + + + + Whether to enlist in an ambient TransactionScope. + + + + + Gets or sets the schema search path. + + + + + Gets or sets the client_encoding parameter. + + + + + Gets or sets the .NET encoding that will be used to encode/decode PostgreSQL string data. + + + + + Gets or sets the PostgreSQL session timezone, in Olson/IANA database format. + + + + + Controls whether SSL is required, disabled or preferred, depending on server support. + + + + + Location of a client certificate to be sent to the server. + + + + + Location of a client key for a client certificate to be sent to the server. + + + + + Password for a key for a client certificate. + + + + + Location of a CA certificate used to validate the server certificate. + + + + + Whether to check the certificate revocation list during authentication. + False by default. + + + + + The Kerberos service name to be used for authentication. + + + + + The Kerberos realm to be used for authentication. + + + + + Gets or sets a Boolean value that indicates if security-sensitive information, such as the password, is not returned as part of the connection if the connection is open or has ever been in an open state. + + + + + When enabled, parameter values are logged when commands are executed. Defaults to false. + + + + + When enabled, PostgreSQL error details are included on and + . These can contain sensitive data. + + + + + Controls whether channel binding is required, disabled or preferred, depending on server support. + + + + + Whether connection pooling should be used. + + + + + The minimum connection pool size. + + + + + The maximum connection pool size. + + + + + The time to wait before closing idle connections in the pool if the count + of all connections exceeds MinPoolSize. + + The time (in seconds) to wait. The default value is 300. + + + + How many seconds the pool waits before attempting to prune idle connections that are beyond + idle lifetime (. + + The interval (in seconds). The default value is 10. + + + + The total maximum lifetime of connections (in seconds). Connections which have exceeded this value will be + destroyed instead of returned from the pool. This is useful in clustered configurations to force load + balancing between a running server and a server just brought online. + + The time (in seconds) to wait, or 0 to to make connections last indefinitely (the default). + + + + The time to wait (in seconds) while trying to establish a connection before terminating the attempt and generating an error. + Defaults to 15 seconds. + + + + + The time to wait (in seconds) while trying to execute a command before terminating the attempt and generating an error. + Defaults to 30 seconds. + + + + + The time to wait (in milliseconds) while trying to read a response for a cancellation request for a timed out or cancelled query, before terminating the attempt and generating an error. + Zero for infinity, -1 to skip the wait. + Defaults to 2000 milliseconds. + + + + + Determines the preferred PostgreSQL target server type. + + + + + Enables balancing between multiple hosts by round-robin. + + + + + Controls for how long the host's cached state will be considered as valid. + + + + + The number of seconds of connection inactivity before Npgsql sends a keepalive query. + Set to 0 (the default) to disable. + + + + + Whether to use TCP keepalive with system defaults if overrides isn't specified. + + + + + The number of seconds of connection inactivity before a TCP keepalive query is sent. + Use of this option is discouraged, use instead if possible. + Set to 0 (the default) to disable. + + + + + The interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received. + Defaults to the value of . must be non-zero as well. + + + + + Determines the size of the internal buffer Npgsql uses when reading. Increasing may improve performance if transferring large values from the database. + + + + + Determines the size of the internal buffer Npgsql uses when writing. Increasing may improve performance if transferring large values to the database. + + + + + Determines the size of socket read buffer. + + + + + Determines the size of socket send buffer. + + + + + The maximum number SQL statements that can be automatically prepared at any given point. + Beyond this number the least-recently-used statement will be recycled. + Zero (the default) disables automatic preparation. + + + + + The minimum number of usages an SQL statement is used before it's automatically prepared. + Defaults to 5. + + + + + If set to true, a pool connection's state won't be reset when it is closed (improves performance). + Do not specify this unless you know what you're doing. + + + + + Load table composite type definitions, and not just free-standing composite types. + + + + + Set the replication mode of the connection + + + This property and its corresponding enum are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Set PostgreSQL configuration parameter default values for the connection. + + + + + Configure the way arrays of value types are returned when requested as object instances. + + + + + Enables multiplexing, which allows more efficient use of connections. + + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A compatibility mode for special PostgreSQL server types. + + + + + Whether to trust the server certificate without validating it. + + + + + The time to wait (in seconds) while trying to execute a an internal command before terminating the attempt and generating an error. + + + + + Determines whether the specified object is equal to the current object. + + + + + Hash function. + + + + + + Gets an containing the keys of the . + + + + + Gets an containing the values in the . + + + + + Copies the elements of the to an Array, starting at a particular Array index. + + + The one-dimensional Array that is the destination of the elements copied from . + The Array must have zero-based indexing. + + + The zero-based index in array at which copying begins. + + + + + Returns an enumerator that iterates through the . + + + + + + + + + Marks on which participate in the connection + string. Optionally holds a set of synonyms for the property. + + + + + Holds a list of synonyms for the property. + + + + + Creates a . + + + + + Creates a . + + + + + An option specified in the connection string that activates special compatibility features. + + + + + No special server compatibility mode is active + + + + + The server is an Amazon Redshift instance. + + + + + The server is doesn't support full type loading from the PostgreSQL catalogs, support the basic set + of types via information hardcoded inside Npgsql. + + + + + Specifies how to manage SSL. + + + + + SSL is disabled. If the server requires SSL, the connection will fail. + + + + + Prefer non-SSL connections if the server allows them, but allow SSL connections. + + + + + Prefer SSL connections if the server allows them, but allow connections without SSL. + + + + + Fail the connection if the server doesn't support SSL. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate with host's name. + + + + + Specifies how to manage channel binding. + + + + + Channel binding is disabled. If the server requires channel binding, the connection will fail. + + + + + Prefer channel binding if the server allows it, but connect without it if not. + + + + + Fail the connection if the server doesn't support channel binding. + + + + + Specifies how the mapping of arrays of + value types + behaves with respect to nullability when they are requested via an API returning an . + + + + + Arrays of value types are always returned as non-nullable arrays (e.g. int[]). + If the PostgreSQL array contains a NULL value, an exception is thrown. This is the default mode. + + + + + Arrays of value types are always returned as nullable arrays (e.g. int?[]). + + + + + The type of array that gets returned is determined at runtime. + Arrays of value types are returned as non-nullable arrays (e.g. int[]) + if the actual instance that gets returned doesn't contain null values + and as nullable arrays (e.g. int?[]) if it does. + + When using this setting, make sure that your code is prepared to the fact + that the actual type of array instances returned from APIs like + may change on a row by row base. + + + + Specifies whether the connection shall be initialized as a physical or + logical replication connection + + + This enum and its corresponding property are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Replication disabled. This is the default + + + + + Physical replication enabled + + + + + Logical replication enabled + + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + This class represents an adapter from many commands: select, update, insert and delete to fill a . + + + + + Row updated event. + + + + + Row updating event. + + + + + Default constructor. + + + + + Constructor. + + + + + + Constructor. + + + + + + + Constructor. + + + + + + + Create row updated event. + + + + + Create row updating event. + + + + + Raise the RowUpdated event. + + + + + + Raise the RowUpdating event. + + + + + + Delete command. + + + + + Select command. + + + + + Update command. + + + + + Insert command. + + + + + Reads a forward-only stream of rows from a data source. + + + + + The behavior of the command with which this reader was executed. + + + + + In multiplexing, this is as the sending is managed in the write multiplexing loop, + and does not need to be awaited by the reader. + + + + + Holds the list of statements being executed by this reader. + + + + + The index of the current query resultset we're processing (within a multiquery) + + + + + Records, for each column, its starting offset and length in the current row. + Used only in non-sequential mode. + + + + + The index of the column that we're on, i.e. that has already been parsed, is + is memory and can be retrieved. Initialized to -1, which means we're on the column + count (which comes before the first column). + + + + + The position in the buffer at which the current data row message ends. + Used only when the row is consumed non-sequentially. + + + + + Determines, if we can consume the row non-sequentially. + Mostly useful for a sequential mode, when the row is already in the buffer. + Should always be true for the non-sequential mode. + + + + + The RowDescription message for the current resultset being processed + + + + + Stores the last converter info resolved by column, to speed up repeated reading. + + + + + Whether the current result set has rows + + + + + Is raised whenever Close() is called. + + + + + Advances the reader to the next record in a result set. + + true if there are more rows; otherwise false. + + The default position of a data reader is before the first record. Therefore, you must call Read to begin accessing data. + + + + + This is the asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Advances the reader to the next result when reading the results of a batch of statements. + + + + + + This is the asynchronous version of NextResult. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Internal implementation of NextResult + + + + + Note that in SchemaOnly mode there are no resultsets, and we read nothing from the backend (all + RowDescriptions have already been processed and are available) + + + + + Gets a value indicating the depth of nesting for the current row. Always returns zero. + + + + + Gets a value indicating whether the data reader is closed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. -1 for SELECT statements; 0 if no rows were affected or the statement failed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. 0 for SELECT statements, if no rows were affected or the statement failed. + + + + + Returns details about each statement that this reader will or has executed. + + + Note that some fields (i.e. rows and oid) are only populated as the reader + traverses the result. + + For commands with multiple queries, this exposes the number of rows affected on + a statement-by-statement basis, unlike + which exposes an aggregation across all statements. + + + + + Gets a value that indicates whether this DbDataReader contains one or more rows. + + + + + Indicates whether the reader is currently positioned on a row, i.e. whether reading a + column is possible. + This property is different from in that will + return true even if attempting to read a column will fail, e.g. before + has been called + + + + + Gets the name of the column, given the zero-based column ordinal. + + The zero-based column ordinal. + The name of the specified column. + + + + Gets the number of columns in the current row. + + + + + Consumes all result sets for this reader, leaving the connector ready for sending and processing further + queries + + + + + Releases the resources used by the . + + + + + Releases the resources used by the . + + + + + Closes the reader, allowing a new command to be executed. + + + + + Closes the reader, allowing a new command to be executed. + + + + + Gets the value of the specified column as a Boolean. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a byte. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single character. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 16-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 32-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 64-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a double-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a globally-unique identifier (GUID). + + The zero-based column ordinal. + The value of the specified column. + + + + Populates an array of objects with the column values of the current row. + + An array of Object into which to copy the attribute columns. + The number of instances of in the array. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a TimeSpan, + + + PostgreSQL's interval type has has a resolution of 1 microsecond and ranges from + -178000000 to 178000000 years, while .NET's TimeSpan has a resolution of 100 nanoseconds + and ranges from roughly -29247 to 29247 years. + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + The zero-based column ordinal. + The value of the specified column. + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + Currently only supported in non-sequential mode. + + The zero-based column ordinal. + A data reader. + + + + Reads a stream of bytes from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of bytes read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Reads a stream of characters from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of characters read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Asynchronously gets the value of the specified column as a type. + + The type of the value to be returned. + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Synchronously gets the value of the specified column as a type. + + Synchronously gets the value of the specified column as a type. + The column to be retrieved. + The column to be retrieved. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The name of the column. + The value of the specified column. + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + The zero-based column ordinal. + true if the specified column is equivalent to ; otherwise false. + + + + An asynchronous version of , which gets a value that indicates whether the column contains non-existent or missing values. + The parameter is currently ignored. + + The zero-based column to be retrieved. + + An optional token to cancel the asynchronous operation. The default value is . + + true if the specified column value is equivalent to otherwise false. + + + + Gets the column ordinal given the name of the column. + + The name of the column. + The zero-based column ordinal. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + The zero-based column index. + + + + Gets the data type information for the specified field. + This is the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + The zero-based column index. + + + + Gets the OID for the PostgreSQL type for the specified field, as it appears in the pg_type table. + + + This is a PostgreSQL-internal value that should not be relied upon and should only be used for + debugging purposes. + + The zero-based column index. + + + + Gets the data type of the specified column. + + The zero-based column ordinal. + The data type of the specified column. + + + + Returns an that can be used to iterate through the rows in the data reader. + + An that can be used to iterate through the rows in the data reader. + + + + Returns schema information for the columns in the current resultset. + + + + + + Asynchronously returns schema information for the columns in the current resultset. + + + + + + Returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Asynchronously returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Seeks to the given column. The 4-byte length is read and returned. + + + + + Checks that we have a RowDescription, but not necessary an actual resultset + (for operations which work in SchemaOnly mode. + + + + + Unbinds reader from the connector. + Should be called before the connector is returned to the pool. + + + + + + + + + + + Contains the connection string returned to the user from + after the connection has been opened. Does not contain the password unless Persist Security Info=true. + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + Semaphore to ensure we don't perform type loading and mapping setup concurrently for this data source. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a command ready for use against this . + + An optional SQL for the command. + + + + Creates a batch ready for use against this . + + + + + Creates a new for the given . + + + + + Creates a new for the given . + + + + + Manually sets the password to be used the next time a physical connection is opened. + Consider using instead. + + + + + + + + + + + + + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + Constructs a new , optionally starting out from the given . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + The exception that is thrown when server-related issues occur. + + + PostgreSQL errors (e.g. query SQL issues, constraint violations) are raised via + which is a subclass of this class. + Purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ArgumentException). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class with a specified error message. + + The message that describes the error. + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error or a timeout). + + + + + + + + + + + Initializes a new instance of the class with serialized data. + + The SerializationInfo that holds the serialized object data about the exception being thrown. + The StreamingContext that contains contextual information about the source or destination. + + + + A factory to create instances of various Npgsql objects. + + + + + Gets an instance of the . + This can be used to retrieve strongly typed data objects. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Specifies whether the specific supports the class. + + + + + Specifies whether the specific supports the class. + + + + + + + + + + + + + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + A service object of type serviceType, or null if there is no service object of type serviceType. + + + + Large object manager. This class can be used to store very large files in a PostgreSQL database. + + + + + The largest chunk size (in bytes) read and write operations will read/write each roundtrip to the network. Default 4 MB. + + + + + Creates an NpgsqlLargeObjectManager for this connection. The connection must be opened to perform remote operations. + + + + + + Execute a function + + + + + Execute a function that returns a byte array + + + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + The oid for the large object created + If an oid is already in use + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + The oid for the large object created + If an oid is already in use + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Deletes a large object on the backend. + + Oid of the object to delete + + + + Deletes a large object on the backend. + + Oid of the object to delete + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + An interface to remotely control the seekable stream for an opened large object on a PostgreSQL server. + Note that the OpenRead/OpenReadWrite method as well as all operations performed on this stream must be wrapped inside a database transaction. + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + How many bytes actually read, or 0 if end of file was already reached. + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + + An optional token to cancel the asynchronous operation. The default value is . + + How many bytes actually read, or 0 if end of file was already reached. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + CanTimeout always returns false. + + + + + CanRead always returns true, unless the stream has been closed. + + + + + CanWrite returns true if the stream was opened with write permissions, and the stream has not been closed. + + + + + CanSeek always returns true, unless the stream has been closed. + + + + + Returns the current position in the stream. Getting the current position does not need a round-trip to the server, however setting the current position does. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Does nothing. + + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases resources at the backend allocated for this stream. + + + + + Releases resources at the backend allocated for this stream, iff disposing is true. + + Whether to release resources allocated at the backend. + + + + Configures Npgsql logging + + + + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to false. + + + + + + Globally initializes Npgsql logging to use the provided . + Must be called before any Npgsql APIs are used. + + + This is a legacy-only, backwards compatibility API. New applications should set the logger factory on + and use the resulting instead. + + + The logging factory to use when logging from Npgsql. + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to . + + + + + An which manages connections for multiple hosts, is aware of their states (primary, secondary, + offline...) and can perform failover and load balancing across them. + + + See . + + + + + Returns a new, unopened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Returns an that wraps this multi-host one with the given server type. + + Specifies the server type (e.g. primary, standby). + + + + Clears the database state (primary, secondary, offline...) for all data sources managed by this multi-host data source. + Can be useful to make Npgsql retry a PostgreSQL instance which was previously detected to be offline. + + + + + Reads a forward-only stream of rows from a nested data source. + Can be retrieved using or + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + + The zero-based column ordinal. + A data reader. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides information on a PostgreSQL notification. Notifications are sent when your connection has registered for + notifications on a specific channel via the LISTEN command. NOTIFY can be used to generate such notifications, + allowing for an inter-connection communication channel. + + + + + Process ID of the PostgreSQL backend that sent this notification. + + + + + The channel on which the notification was sent. + + + + + An optional payload string that was sent with this notification. + + + + + Thrown when trying to use a connection that is already busy performing some other operation. + Provides information on the already-executing operation to help with debugging. + + + + + Creates a new instance of . + + + A command which was in progress when the operation which triggered this exception was executed. + + + + + If the connection is busy with another command, this will contain a reference to that command. + Otherwise, if the connection if busy with another type of operation (e.g. COPY), contains + . + + + + + This class represents a parameter to a command that will be sent to server + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the parameter name and a value. + + The name of the parameter to map. + The value of the . + +

+ When you specify an in the value parameter, the is + inferred from the CLR type. +

+

+ When using this constructor, you must be aware of a possible misuse of the constructor which takes a + parameter. This happens when calling this constructor passing an int 0 and the compiler thinks you are passing a value of + . Use for example to have compiler calling the correct constructor. +

+
+
+ + + Initializes a new instance of the class with the parameter name and the data type. + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Gets or sets The name of the . + + The name of the . + The default is an empty string. + + + + + + + Gets or sets the value of the parameter. + + + An that is the value of the parameter. + The default value is . + + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Used to specify which PostgreSQL type will be sent to the database for this parameter. + + + + + + + + + + + Gets or sets the maximum number of digits used to represent the property. + + + The maximum number of digits used to represent the property. + The default value is 0, which indicates that the data provider sets the precision for . + + + + Gets or sets the number of decimal places to which is resolved. + + The number of decimal places to which is resolved. The default is 0. + + + + + + + + + + + + + + + + The collection to which this parameter belongs, if any. + + + + + The PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This property is automatically set if parameters have been derived via + and can be used to + acquire additional information about the parameters' data type. + + + + Attempt to resolve a type info based on available (postgres) type information on the parameter. + + + Bind the current value to the type info, truncate (if applicable), take its size, and do any final validation before writing. + + + + + + + Creates a new that is a copy of the current instance. + + A new that is a copy of this instance. + + + + Represents a collection of parameters relevant to a as well as their respective mappings to columns in + a . + + + + + Initializes a new instance of the NpgsqlParameterCollection class. + + + + + Gets the with the specified name. + + The name of the to retrieve. + + The with the specified name, or a reference if the parameter is not found. + + + + + Gets the at the specified index. + + The zero-based index of the to retrieve. + The at the specified index. + + + + Adds the specified object to the . + + The to add to the collection. + The index of the new object. + + + + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name, + data type and value. + + The name of the . + One of the NpgsqlDbType values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The name of the source column. + The parameter that was added. + + + + Adds a to the given the specified value. + + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified data type and value. + + One of the values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the parameter name and the data type. + + The name of the parameter. + One of the values. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, + and the column length. + + The name of the parameter. + One of the values. + The length of the column. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, the + column length, and the source column name. + + The name of the parameter. + One of the values. + The length of the column. + The name of the source column. + The index of the new object. + + + + + + + + + + + + + + + + Removes the specified from the collection using a specific index. + + The zero-based index of the parameter. + + + + + + + Removes the specified from the collection. + + The name of the to remove from the collection. + + + + Removes the specified from the collection. + + The to remove from the collection. + + + + + + + Gets a value indicating whether a with the specified parameter name exists in the collection. + + The name of the object to find. + + A reference to the requested parameter is returned in this out param if it is found in the list. + This value is if the parameter is not found. + + + if the collection contains the parameter and param will contain the parameter; + otherwise, . + + + + + Removes all items from the collection. + + + + + + + + + + + + + + + + + Gets the number of objects in the collection. + + The number of objects in the collection. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Report the offset within the collection of the given parameter. + + Parameter to find. + Index of the parameter, or -1 if the parameter is not present. + + + + Insert the specified parameter into the collection. + + Index of the existing parameter before which to insert the new one. + Parameter to insert. + + + + Report whether the specified parameter is present in the collection. + + Parameter to find. + True if the parameter was found, otherwise false. + + + + Remove the specified parameter from the collection. + + Parameter to remove. + True if the parameter was found and removed, otherwise false. + + + + Convert collection to a System.Array. + + Destination array. + Starting index in destination array. + + + + Convert collection to a System.Array. + + NpgsqlParameter[] + + + + The parameter collection includes no parameters. + + + + + The parameter collection includes only named parameters. + + + + + The parameter collection includes only positional parameters. + + + + + The parameter collection includes both named and positional parameters. + This is only supported when is set to . + + + + + A generic version of which provides more type safety and + avoids boxing of value types. Use instead of . + + The type of the value that will be stored in the parameter. + + + + Gets or sets the strongly-typed value of the parameter. + + + + + Gets or sets the value of the parameter. This delegates to . + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a parameter name and value. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Provides an API for a raw binary COPY operation, a high-performance data import/export mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The copy binary format header signature + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Writer for a text import, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Reader for a text export, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing export. + + + + + Asynchronously cancels and terminates an ongoing export. + + + + + Provides the underlying mechanism for reading schema information. + + + + + Returns the MetaDataCollections that lists all possible collections. + + The MetaDataCollections + + + + Returns the Restrictions that contains the meaning and position of the values in the restrictions array. + + The Restrictions + + + + Populates some generic type information that is common for base types, arrays, enums, etc. Some will + be overridden later. + + + + + Sets some custom, hardcoded info on a DataType row that cannot be loaded/inferred from PostgreSQL + + + + + List of keywords taken from PostgreSQL 9.0 reserved words documentation. + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + On this builder, various features are disabled by default; unless you're looking to save on code size (e.g. when publishing with + NativeAOT), use instead. + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + Constructs a new , optionally starting out from the given + . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + The same builder instance so that multiple calls can be chained. + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + The same builder instance so that multiple calls can be chained. + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sets up mappings for the PostgreSQL array types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL range types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL record type as a .NET object[]. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL tsquery and tsvector types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL ltree extension types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for extra conversions from PostgreSQL to .NET types. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use TLS/SSl encryption for connections to PostgreSQL. This does not guarantee that encryption will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use GSS/SSPI authentication for connections to PostgreSQL. This does not guarantee that it will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + Options to configure Npgsql's support for OpenTelemetry tracing. + Currently no options are available. + + + + + Represents a transaction to be made in a PostgreSQL database. This class cannot be inherited. + + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + If true, the transaction has been committed/rolled back, but not disposed. + + + + + Specifies the isolation level for this transaction. + + The isolation level for this transaction. The default is . + + + + Commits the database transaction. + + + + + Commits the database transaction. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Rolls back a transaction from a pending state. + + + + + Rolls back a transaction from a pending state. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Creates a transaction save point. + + The name of the savepoint. + + This method does not cause a database roundtrip to be made. The savepoint creation statement will instead be sent along with + the next command. + + + + + Creates a transaction save point. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + This method does not cause a database roundtrip to be made, and will therefore always complete synchronously. + The savepoint creation statement will instead be sent along with the next command. + + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Indicates whether this transaction supports database savepoints. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, without rolling back. Used only in special circumstances, e.g. when + the connection is broken. + + + + + Unbinds transaction from the connector. + Should be called before the connector is returned to the pool. + + + + + Represents a .pgpass file, which contains passwords for noninteractive connections + + + + + File name being parsed for credentials + + + + + Initializes a new instance of the class + + + + + + Parses file content and gets all credentials from the file + + corresponding to all lines in the .pgpass file + + + + Searches queries loaded from .PGPASS file to find first entry matching the provided parameters. + + Hostname to query. Use null to match any. + Port to query. Use null to match any. + Database to query. Use null to match any. + User name to query. Use null to match any. + Matching if match was found. Otherwise, returns null. + + + + Represents a hostname, port, database, username, and password combination that has been retrieved from a .pgpass file + + + + + Hostname parsed from the .pgpass file + + + + + Port parsed from the .pgpass file + + + + + Database parsed from the .pgpass file + + + + + User name parsed from the .pgpass file + + + + + Password parsed from the .pgpass file + + + + + This class represents an entry from the .pgpass file + + Hostname parsed from the .pgpass file + Port parsed from the .pgpass file + Database parsed from the .pgpass file + User name parsed from the .pgpass file + Password parsed from the .pgpass file + + + + Creates new based on string in the format hostname:port:database:username:password. The : and \ characters should be escaped with a \. + + string for the entry from the pgpass file + New instance of for the string + Entry is not formatted as hostname:port:database:username:password or non-wildcard port is not a number + + + + Checks whether this matches the parameters supplied + + Hostname to check against this entry + Port to check against this entry + Database to check against this entry + Username to check against this entry + True if the entry is a match. False otherwise. + + + + Checks if 2 strings are a match for a considering that either value can be a wildcard (*) + + Value being searched + Value from the PGPASS entry + True if the values are a match. False otherwise. + + + + Tracks all connectors currently managed by this pool, whether idle or busy. + Only updated rarely - when physical connections are opened/closed - but is read in perf-sensitive contexts. + + + + + Reader side for the idle connector channel. Contains nulls in order to release waiting attempts after + a connector has been physically closed/broken. + + + + + Incremented every time this pool is cleared via or + . Allows us to identify connections which were + created before the clear. + + + + + Provides lookup for a pool based on a connection string. + + + Note that pools created directly as are referenced directly by users, and aren't managed here. + + + + + Resets the pool manager to its initial state, for test purposes only. + Assumes that no other threads are accessing the pool. + + + + + The default implementation of , for standard PostgreSQL databases.. + + + + + + + + The default implementation of NpgsqlDatabase, for standard PostgreSQL databases. + + + + + The PostgreSQL types detected in the database. + + + + + + + + The PostgreSQL version string as returned by the version() function. Populated during loading. + + + + + True if the backend is Amazon Redshift; otherwise, false. + + + + + + + + True if the 'pg_enum' table includes the 'enumsortorder' column; otherwise, false. + + + + + True if the 'pg_type' table includes the 'typcategory' column; otherwise, false. + + + pg_type.typcategory is added after 8.4. + see: https://www.postgresql.org/docs/8.4/static/catalog-pg-type.html#CATALOG-TYPCATEGORY-TABLE + + + + + Loads database information from the PostgreSQL database specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A task representing the asynchronous operation. + + + + + Generates a raw SQL query string to select type information. + + + Select all types (base, array which is also base, enum, range, composite). + Note that arrays are distinguished from primitive types through them having typreceive=array_recv. + Order by primitives first, container later. + For arrays and ranges, join in the element OID and type (to filter out arrays of unhandled + types). + + + + + Loads type information from the backend specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A collection of types loaded from the backend. + + + Unknown typtype for type '{internalName}' in pg_type: {typeChar}. + + + + Provides constants for PostgreSQL error codes. + + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The exception that is thrown when the PostgreSQL backend reports errors (e.g. query + SQL issues, constraint violations). + + + This exception only corresponds to a PostgreSQL-delivered error. + Other errors (e.g. network issues) will be raised via , + and purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ). + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html, + https://www.postgresql.org/docs/current/static/protocol-error-fields.html + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Populates a with the data needed to serialize the target object. + + The to populate with data. + The destination (see ) for this serialization. + + + + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error). Check . + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + Constants are defined in . + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + + https://www.postgresql.org/docs/current/static/protocol-flow.html#PROTOCOL-ASYNC + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Provides data for a PostgreSQL notice event. + + + + + The Notice that was sent from the database. + + + + + Represents a PostgreSQL array data type, which can hold several multiple values in a single column. + + + See https://www.postgresql.org/docs/current/static/arrays.html. + + + + + The PostgreSQL data type of the element contained within this array. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + + + + Represents a PostgreSQL base data type, which is a simple scalar value. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + + + + Represents a PostgreSQL composite data type, which can hold multiple fields of varying types in a single column. + + + See https://www.postgresql.org/docs/current/static/rowtypes.html. + + + + + Holds the name and types for all fields. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a field in a PostgreSQL composite data type. + + + + + The name of the composite field. + + + + + The type of the composite field. + + + + + + + + Represents a PostgreSQL domain type. + + + See https://www.postgresql.org/docs/current/static/sql-createdomain.html. + + When PostgreSQL returns a RowDescription for a domain type, the type OID is the base type's + (so fetching a domain type over text returns a RowDescription for text). + However, when a composite type is returned, the type OID there is that of the domain, + so we provide "clean" support for domain types. + + + + + The PostgreSQL data type of the base type, i.e. the type this domain is based on. + + + + + True if the domain has a NOT NULL constraint, otherwise false. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a PostgreSQL enum data type. + + + See https://www.postgresql.org/docs/current/static/datatype-enum.html. + + + + + The enum's fields. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Represents a PostgreSQL multirange data type. + + +

See https://www.postgresql.org/docs/current/static/rangetypes.html.

+

Multirange types were introduced in PostgreSQL 14.

+
+
+ + + The PostgreSQL data type of the range of this multirange. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Represents a PostgreSQL range data type. + + + See https://www.postgresql.org/docs/current/static/rangetypes.html. + + + + + The PostgreSQL data type of the subtype of this range. + + + + + The PostgreSQL data type of the multirange of this range. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Represents a PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This class is abstract, see derived classes for concrete types of PostgreSQL types. + + + Instances of this class are shared between connections to the same databases. + For more info about what this class and its subclasses represent, see + https://www.postgresql.org/docs/current/static/catalog-pg-type.html. + + + + + Constructs a representation of a PostgreSQL data type. + + The data type's namespace (or schema). + The data type's name. + The data type's OID. + + + + Constructs a representation of a PostgreSQL data type. + + The data type's fully qualified name. + The data type's OID. + + + + The data type's OID - a unique id identifying the data type in a given database (in pg_type). + + + + + The data type's namespace (or schema). + + + + + The data type's name. + + + Note that this is the standard, user-displayable type name (e.g. integer[]) rather than the internal + PostgreSQL name as it is in pg_type (_int4). See for the latter. + + + + + The full name of the backend type, including its namespace. + + + + + A display name for this backend type, including the namespace unless it is pg_catalog (the namespace + for all built-in types). + + + + + The data type's internal PostgreSQL name (e.g. _int4 not integer[]). + See for a more user-friendly name. + + + + + If a PostgreSQL array type exists for this type, it will be referenced here. + Otherwise null. + + + + + If a PostgreSQL range type exists for this type, it will be referenced here. + Otherwise null. + + + + + Generates the type name including any facts (size, precision, scale), given the PostgreSQL type modifier. + + + + + Returns a string that represents the current object. + + + + Canonizes (nested) domain types to underlying types, does not handle composites. + + + A base type. + + + An enum carrying its variants. + + + A pseudo type like anyarray. + + + + Represents a PostgreSQL data type that isn't known to Npgsql and cannot be handled. + + + + + Constructs a the unknown backend type. + + + + + Internally represents a statement has been prepared, is in the process of being prepared, or is a + candidate for preparation (i.e. awaiting further usages). + + + + + If true, the user explicitly requested this statement be prepared. It does not get closed as part of + the automatic preparation LRU mechanism. + + + + + If this statement is about to be prepared, but replaces a previous statement which needs to be closed, + this holds the name of the previous statement. Otherwise null. + + + + + Contains the handler types for a prepared statement's parameters, for overloaded cases (same SQL, different param types) + Only populated after the statement has been prepared (i.e. null for candidates). + + + + + The state of a . + + + + + The statement hasn't been prepared yet, nor is it in the process of being prepared. + This is the value for autoprepare candidates which haven't been prepared yet, and is also + a temporary state during preparation. + + + + + The statement is in the process of being prepared. + + + + + The statement has been fully prepared and can be executed. + + + + + The statement is in the process of being unprepared. This is a temporary state that only occurs during + unprepare. Specifically, it means that a Close message for the statement has already been written + to the write buffer. + + + + + The statement has been unprepared and is no longer usable. + + + + + The statement was invalidated because e.g. table schema has changed since preparation. + + + + + Total number of current prepared statements (whether explicit or automatic). + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + Creates a new replication slot and returns information about the newly-created slot. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + The name of the output plugin used for logical decoding (see + + https://www.postgresql.org/docs/current/logicaldecoding-output-plugin.html). + + if this replication slot shall be temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + A to specify what to do with the + snapshot created during logical slot initialization. , which is + also the default, will export the snapshot for use in other sessions. This option can't be used inside a + transaction. will use the snapshot for the current transaction + executing the command. This option must be used in a transaction, and + must be the first command run in that transaction. Finally, will + just use the snapshot for logical decoding as normal but won't do anything else with it. + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a class that + can be used to initialize instances of subclasses. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + or at the slot's consistent point if isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + The collection of options passed to the slot's logical decoding plugin. + + Whether the plugin will be bypassing and reading directly from the buffer. + + A representing an that + can be used to stream WAL entries in form of instances. + + + + Contains information about a newly-created logical replication slot. + + + + + Creates a new logical replication slot + + The logical decoding output plugin to the corresponding replication slot was created for. + A struct with information to create the replication slot. + + + + The identifier of the snapshot exported by the command. + The snapshot is valid until a new command is executed on this connection or the replication connection is closed. + + + + + The name of the output plugin used by the newly-created logical replication slot. + + + + + The WAL location at which the slot became consistent. + This is the earliest location from which streaming can start on this replication slot. + + + + + Represents a logical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Decides what to do with the snapshot created during logical slot initialization. + + + + + Export the snapshot for use in other sessions. This is the default. + This option can't be used inside a transaction. + + + + + Use the snapshot for the current transaction executing the command. + This option must be used in a transaction, and CREATE_REPLICATION_SLOT must be the first command run + in that transaction. + + + + + Just use the snapshot for logical decoding as normal but don't do anything else with it. + + + + + Logical Replication Protocol begin message + + + + + The final LSN of the transaction. + + + + + Commit timestamp of the transaction. + The value is in number of microseconds since PostgreSQL epoch (2000-01-01). + + + + + Logical Replication Protocol begin prepare message + + + + + Logical Replication Protocol commit message + + + + + Flags; currently unused. + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit. + + + + + No flags. + + + + + Logical Replication Protocol commit prepared message + + + + + Flags for the commit prepared; currently unused. + + + + + The LSN of the commit prepared. + + + + + The end LSN of the commit prepared transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to DEFAULT. + + + + + Columns representing the new row. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY REPLICA IDENTITY set to FULL. + + + + + Columns representing the deleted row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to FULL. + + + + + Columns representing the old row. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to USING INDEX. + + + + + Columns representing the key. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol insert message + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY set to DEFAULT or USING INDEX. + + + + + Columns representing the key. + + + + + Logical Replication Protocol logical decoding message + + + + + Flags; Either 0 for no flags or 1 if the logical decoding message is transactional. + + + + + The LSN of the logical decoding message. + + + + + The prefix of the logical decoding message. + + + + + The content of the logical decoding message. + + + + + Logical Replication Protocol origin message + + + + + The LSN of the commit on the origin server. + + + + + Name of the origin. + + + + + The base class of all Logical Replication Protocol Messages + + + See https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html for details about the + protocol. + + + + + + + + Abstract base class for Logical Replication Protocol prepare and begin prepare message + + + + + The user defined GID of the two-phase transaction. + + + + + Logical Replication Protocol prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Abstract base class for the logical replication protocol begin prepare and prepare message + + + + + The LSN of the prepare. + + + + + The end LSN of the prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Logical Replication Protocol relation message + + + + + ID of the relation. + + + + + Namespace (empty string for pg_catalog). + + + + + Relation name. + + + + + Replica identity setting for the relation (same as relreplident in pg_class): + columns used to form “replica identity” for rows. + + + + + Relation columns + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Flags for the column. + + + + + No flags. + + + + + Marks the column as part of the key. + + + + + Replica identity setting for the relation (same as relreplident in pg_class). + + + See + + + + + Default (primary key, if any). + + + + + Nothing. + + + + + All columns. + + + + + Index with indisreplident set (same as nothing if the index used has been dropped) + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. Currently can be either 0 for no flags or 1 which marks the column as part of the key. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Logical Replication Protocol rollback prepared message + + + + + Flags for the rollback prepared; currently unused. + + + + + The end LSN of the prepared transaction. + + + + + The end LSN of the rollback prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Rollback timestamp of the transaction. + + + + + Flags for the rollback prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream abort message + + + + + Xid of the subtransaction (will be same as xid of the transaction for top-level transactions). + + + + + Logical Replication Protocol stream commit message + + + + + Flags; currently unused (must be 0). + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Logical Replication Protocol stream prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream start message + + + + + A value of 1 indicates this is the first stream segment for this XID, 0 for any other stream segment. + + + + + Logical Replication Protocol stream stop message + + + + + The common base class for all streaming replication messages that can be part of a streaming transaction (protocol V2) + + + + + Xid of the transaction (only present for streamed transactions). + + + + + The common base class for all replication messages that set the transaction xid of a transaction + + + + + Xid of the transaction. + + + + + Logical Replication Protocol truncate message + + + + + Option flags for TRUNCATE + + + + + The relations being truncated. + + + + + Enum representing the additional options for the TRUNCATE command as flags + + + + + No additional option was specified + + + + + CASCADE was specified + + + + + RESTART IDENTITY was specified + + + + + Logical Replication Protocol type message + + + + + ID of the data type. + + + + + Namespace (empty string for pg_catalog). + + + + + Name of the data type. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Options to be passed to the pgoutput plugin + + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + The version of the Logical Streaming Replication Protocol + + + + + The publication names to stream + + + + + Send values in binary representation + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of in-progress transactions + + + This works as of logical streaming replication protocol version 2 (PostgreSQL 14+) + + + + + Write logical decoding messages into the replication stream + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of prepared transactions + + + This works in PostgreSQL versions 15+ + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot initialized for for the logical streaming replication protocol + (pgoutput logical decoding plugin). + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The representing the existing replication slot + + + + Creates a new instance. + + + This constructor is intended to be consumed by plugins sitting on top of + + + The from which the new instance should be initialized + + + + Represents a streaming tuple containing . + + + + + The number of columns in the tuple. + + + + + + + + Represents a column value in a logical replication session. + + + + + The length of the value in bytes. + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + true if the specified column is equivalent to ; otherwise false. + + + + Gets a value that indicates whether the column contains an unchanged TOASTed value (the actual value is not sent). + + Whether the specified column is an unchanged TOASTed value. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + + + + Gets the data type information for the specified field. + This is be the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + + + + Gets the data type of the specified column. + + The data type of the specified column. + + + + Gets the value of the specified column as a type. + + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Gets the value of the specified column as an instance of . + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Retrieves data as a . + + + + + Retrieves data as a . + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Identifies the data as NULL value. + + + + + Identifies unchanged TOASTed value (the actual value is not sent). + + + + + Identifies the data as text formatted value. + + + + + Identifies the data as binary value. + + Added in PG14 + + + + Extension methods to use with the pg_output logical decoding plugin. + + + + + Creates a class that wraps a replication slot using the + "pgoutput" logical decoding plugin and can be used to start streaming replication via the logical + streaming replication protocol. + + + See https://www.postgresql.org/docs/current/protocol-logical-replication.html + and https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html + for more information. + + The to use for creating the replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start the Logical Streaming Replication Protocol (pgoutput logical decoding plugin), + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The collection of options passed to the slot's logical decoding plugin. + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a physical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Creates a that wraps a PostgreSQL physical replication slot and + can be used to start physical streaming replication + + + The name of the slot to create. Must be a valid replication slot name + (see Section 26.2.6.1). + + + if this replication slot shall be a temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + + + If this is set to this physical replication slot reserves WAL immediately. Otherwise, + WAL is only reserved upon connection from a streaming replication client. + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a that represents the + newly-created replication slot. + + + + + Read some information associated to a replication slot. + + This command is currently only supported for physical replication slots. + + + + The name of the slot to read. Must be a valid replication slot name + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a or + if the replication slot does not exist. + + + + Instructs the server to start streaming the WAL for physical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for physical replication, starting at the WAL location + and timeline id specified in . The server can reply with an error, for example + if the requested section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The must contain a valid to be used for this overload. + + + The token to be used for stopping the replication. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Wraps a replication slot that uses physical replication. + + + + + Creates a new instance. + + + Create a instance with this constructor to wrap an existing PostgreSQL replication slot + that has been initialized for physical replication. + + The name of the existing replication slot + The replication slot's restart_lsn + The timeline ID associated to restart_lsn, following the current timeline history. + + + + The replication slot's restart_lsn. + + + + + The timeline ID associated to restart_lsn, following the current timeline history. + + + + + Defines the core behavior of replication connections and provides the base class for + and + . + + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + + The connection string that includes the server name, the database name, and other parameters needed to establish the initial + connection. The default value is an empty string. + + + Since replication connections are a special kind of connection, + , , + and + are always disabled no matter what you set them to in your connection string. + + + + + The location of the last WAL byte + 1 received in the standby. + + + + + The location of the last WAL byte + 1 flushed to disk in the standby. + + + + + The location of the last WAL byte + 1 applied (e. g. written to disk) in the standby. + + + + + Send replies at least this often. + Timeout. disables automated replies. + + + + + Time that receiver waits for communication from master. + Timeout. disables the timeout. + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Gets or sets the wait time before terminating the attempt to execute a command and generating an error. + + The time to wait for the command to execute. The default value is 30 seconds. + + + + The client encoding for the connection + This can only be called when there is an active connection. + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Opens a database replication connection with the property settings specified by the + . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous open operation. + + + + Closes the replication connection and performs tasks associated + with freeing, releasing, or resetting its unmanaged resources asynchronously. + + A task that represents the asynchronous dispose operation. + + + + Requests the server to identify itself. + + + An optional token to cancel the asynchronous operation. The default value is . + + + A containing information about the system we are connected to. + + + + + Requests the server to send the current setting of a run-time parameter. + This is similar to the SQL command SHOW. + + The name of a run-time parameter. + Available parameters are documented in https://www.postgresql.org/docs/current/runtime-config.html. + + + An optional token to cancel the asynchronous operation. The default value is . + + The current setting of the run-time parameter specified in as . + + + + Requests the server to send over the timeline history file for timeline tli. + + The timeline for which the history file should be sent. + + An optional token to cancel the asynchronous operation. The default value is . + + The timeline history file for timeline tli + + + + Sets the current status of the replication as it is interpreted by the consuming client. The value supplied + in will be sent to the server via and + with the next status update. + + A status update which will happen upon server request, upon expiration of + our upon an enforced status update via , whichever happens first. + If you want the value you set here to be pushed to the server immediately (e. g. in synchronous replication scenarios), + call after calling this method. + + + + This is a convenience method setting both and in one operation. + You can use it if your application processes replication messages in a way that doesn't care about the difference between + writing a message and flushing it to a permanent storage medium. + + The location of the last WAL byte + 1 applied (e. g. processed or written to disk) and flushed to disk in the standby. + + + + Sends a forced status update to PostgreSQL with the current WAL tracking information. + + The connection currently isn't streaming + A Task representing the sending of the status update (and not any PostgreSQL response). + + + + Drops a replication slot, freeing any reserved server-side resources. + If the slot is a logical slot that was created in a database other than + the database the walsender is connected to, this command fails. + + The name of the slot to drop. + + causes the command to wait until the slot becomes + inactive if it currently is active instead of the default behavior of raising an error. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous drop operation. + + + + The common base class for all streaming replication messages + + + + + The starting point of the WAL data in this message. + + + + + The current end of WAL on the server. + + + + + The server's system clock at the time this message was transmitted, as microseconds since midnight on 2000-01-01. + + + Since the client using Npgsql and the server may be located in different time zones, + as of Npgsql 7.0 this value is no longer converted to local time but keeps its original value in UTC. + You can check if you don't want to introduce behavior depending on Npgsql versions. + + + + + Contains information about a newly-created replication slot. + + + + + The name of the newly-created replication slot. + + + + + Contains information about a replication slot. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + The name of the replication slot. + + + + + The WAL location at which the slot became consistent. + + + + + The identifier of the snapshot exported by the CREATE_REPLICATION_SLOT command. + + + + + Contains server identification information returned from . + + + + + The unique system identifier identifying the cluster. + This can be used to check that the base backup used to initialize the standby came from the same cluster. + + + + + Current timeline ID. Also useful to check that the standby is consistent with the master. + + + + + Current WAL flush location. Useful to get a known location in the write-ahead log where streaming can start. + + + + + Database connected to. + + + + + Text representations of PostgreSQL WAL operations decoded by the "test_decoding" plugin. See + https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Decoded text representation of the operation performed in this WAL entry + + + + + + + + Returns a clone of this message, which can be accessed after other replication messages have been retrieved. + + + + + Options to be passed to the test_decoding plugin + + + + + Creates a new instance of . + + Include the transaction number for BEGIN and COMMIT command output + Include the timestamp for COMMIT command output + Set the output mode to binary + Skip output for transactions that didn't change the database + Only output data that don't have the replication origin set + Include output from table rewrites that were caused by DDL statements + Enable streaming output + + + + Include the transaction number for BEGIN and COMMIT command output + + + + + Include the timestamp for COMMIT command output + + + + + Set the output mode to binary + + + + + Skip output for transactions that didn't change the database + + + + + Only output data that don't have the replication origin set + + + + + Include output from table rewrites that were caused by DDL statements + + + + + Enable streaming output + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot + initialized for for the test_decoding logical decoding plugin. + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The representing the existing replication slot + + + + Extension methods to use with the + test_decoding logical decoding plugin. + See https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Creates a class that wraps a replication slot using the + test_decoding logical decoding plugin. + + + See https://www.postgresql.org/docs/current/test-decoding.html + for more information. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start streaming the WAL for logical replication using the test_decoding logical decoding plugin, + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The collection of options passed to the slot's logical decoding plugin. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a PostgreSQL timeline history file + + + + + File name of the timeline history file, e.g., 00000002.history. + + + + + Contents of the timeline history file. + + + + + A message representing a section of the WAL data stream. + + + + + A section of the WAL data stream that is raw WAL data in physical replication or decoded with the selected + logical decoding plugin in logical replication. It is only valid until the next + is requested from the stream. + + + A single WAL record is never split across two XLogData messages. + When a WAL record crosses a WAL page boundary, and is therefore already split using continuation records, + it can be split at the page boundary. In other words, the first main WAL record and its continuation + records can be sent in different XLogData messages. + + + + + Stripped-down version of , mainly to support Amazon Redshift. + + + + + Performs some post-setup configuration that's common to both table columns and non-columns. + + + + + Provides schema information about a column. + + + Note that this can correspond to a field returned in a query which isn't an actual table column + + See https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldatareader.getschematable(v=vs.110).aspx + for information on the meaning of the different fields. + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The describing the type of this column. + + + + + The OID of the type of this column in the PostgreSQL pg_type catalog table. + + + + + The OID of the PostgreSQL table of this column. + + + + + The column's position within its table. Note that this is different from , + which is the column's position within the resultset. + + + + + The default SQL expression for this column. + + + + + The value for this column's type. + + + + + + + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + + Specifies server type preference. + + + + + Any successful connection is acceptable. + + + + + Session must accept read-write transactions by default (that is, the server must not be in hot standby mode and the + default_transaction_read_only parameter must be off). + + + + + Session must not accept read-write transactions by default (the converse). + + + + + Server must not be in hot standby mode. + + + + + Server must be in hot standby mode. + + + + + First try to find a primary server, but if none of the listed hosts is a primary server, try again in mode. + + + + + First try to find a standby server, but if none of the listed hosts is a standby server, try again in mode. + + + + + Utility class to execute a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it and at the same time prevent event if the original fails later. + + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The result . + The representing the asynchronous wait. + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The representing the asynchronous wait. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A type mapper, managing how to read and write CLR values to PostgreSQL data types. + + + The preferred way to manage type mappings is on . An alternative, but discouraged, method, is to + manage them globally via ). + + + + + The default name translator to convert CLR type names and member names. Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET enum type to be mapped + + + + Removes an existing enum mapping. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing enum mapping. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR type to a PostgreSQL composite type. + + + CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your members to manually specify a PostgreSQL name. + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET type to be mapped + + + + Removes an existing composite mapping. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to + + + + + Maps a CLR type to a composite type. + + + Maps CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + The .NET type to be mapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing composite mapping. + + The .NET type to be unmapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Adds a type info resolver factory which can add or modify support for PostgreSQL types. + Typically used by plugins. + + The type resolver factory to be added. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Resets all mapping changes performed on this type mapper and reverts it to its original, starting state. + + + + + The base class for user type mappings. + + + + + The name of the PostgreSQL type that this mapping is for. + + + + + The CLR type that this mapping is for. + + + + + Represents a timeout that will expire at some point. + + + + + A wrapper around to simplify reset management. + + + Since there's no way to reset a once it was cancelled, + we need to make sure that an existing cancellation token source hasn't been cancelled, + every time we start it (see https://github.com/dotnet/runtime/issues/4694). + + + + + Used, so we wouldn't concurently use the cts for the cancellation, while it's being disposed + + + + + Set the timeout on the wrapped + and make sure that it hasn't been cancelled yet + + + An optional token to cancel the asynchronous operation. The default value is . + + The from the wrapped + + + + Restart the timeout on the wrapped without reinitializing it, + even if is already set to + + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + The from the wrapped + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + + + + Set the timeout on the wrapped + to + + + can still arrive at a state + where it's value is if the + passed to gets a cancellation request. + If this is the case it will be resolved upon the next call to + or . Calling multiple times or without calling + first will do no any harm (besides eating a tiny amount of CPU cycles). + + + + + Cancel the wrapped + + + + + Cancel the wrapped after delay + + + + + The from the wrapped + . + + + The token is only valid after calling + and before calling the next time. + Otherwise you may end up with a token that has already been + cancelled or belongs to a cancellation token source that has + been disposed. + + + + + Allocation free helper function to find if version is greater than expected + + + + + + + + Note that a connection may be closed before its TransactionScope completes. In this case we close the NpgsqlConnection + as usual but the connector in a special list in the pool; it will be closed only when the scope completes. + + + + + Represents a PostgreSQL data type that can be written or read to the database. + Used in places such as to unambiguously specify + how to encode or decode values. + + + See https://www.postgresql.org/docs/current/static/datatype.html. + + + + + Corresponds to the PostgreSQL 8-byte "bigint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 8-byte floating-point "double" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 4-byte "integer" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL arbitrary-precision "numeric" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL floating-point "real" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 2-byte "smallint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL "money" type. + + See https://www.postgresql.org/docs/current/static/datatype-money.html + + + + Corresponds to the PostgreSQL "boolean" type. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL geometric "box" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "circle" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "line" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "lseg" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "path" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "point" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "polygon" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL "char(n)" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "text" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "varchar" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL internal "name" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "citext" type for the citext module. + + See https://www.postgresql.org/docs/current/static/citext.html + + + + Corresponds to the PostgreSQL "char" type. + + + This is an internal field and should normally not be used for regular applications. + + See https://www.postgresql.org/docs/current/static/datatype-text.html + + + + + Corresponds to the PostgreSQL "bytea" type, holding a raw byte string. + + See https://www.postgresql.org/docs/current/static/datatype-binary.html + + + + Corresponds to the PostgreSQL "date" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "interval" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the obsolete PostgreSQL "abstime" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "inet" type. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "cidr" type, a field storing an IPv4 or IPv6 network. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr" type, a field storing a 6-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr8" type, a field storing a 6-byte or 8-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "bit" type. + + See https://www.postgresql.org/docs/current/static/datatype-bit.html + + + + Corresponds to the PostgreSQL "varbit" type, a field storing a variable-length string of bits. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL "tsvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "tsquery" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "regconfig" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "uuid" type. + + See https://www.postgresql.org/docs/current/static/datatype-uuid.html + + + + Corresponds to the PostgreSQL "xml" type. + + See https://www.postgresql.org/docs/current/static/datatype-xml.html + + + + Corresponds to the PostgreSQL "json" type, a field storing JSON in text format. + + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonb" type, a field storing JSON in an optimized binary. + format. + + + Supported since PostgreSQL 9.4. + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonpath" type, a field storing JSON path in text format. + format. + + + Supported since PostgreSQL 12. + See https://www.postgresql.org/docs/current/datatype-json.html#DATATYPE-JSONPATH + + + + + Corresponds to the PostgreSQL "hstore" type, a dictionary of string key-value pairs. + + See https://www.postgresql.org/docs/current/static/hstore.html + + + + Corresponds to the PostgreSQL "refcursor" type. + + + + + Corresponds to the PostgreSQL internal "oidvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL internal "int2vector" type. + + + + + Corresponds to the PostgreSQL "oid" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid8" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "cid" type, an internal command identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "regtype" type, a numeric (OID) ID of a type in the pg_type table. + + + + + Corresponds to the PostgreSQL "tid" type, a tuple id identifying the physical location of a row within its table. + + + + + Corresponds to the PostgreSQL "pg_lsn" type, which can be used to store LSN (Log Sequence Number) data which + is a pointer to a location in the WAL. + + + See: https://www.postgresql.org/docs/current/datatype-pg-lsn.html and + https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=7d03a83f4d0736ba869fa6f93973f7623a27038a + + + + + A special value that can be used to send parameter values to the database without + specifying their type, allowing the database to cast them to another value based on context. + The value will be converted to a string and send as text. + + + This value shouldn't ordinarily be used, and makes sense only when sending a data type + unsupported by Npgsql. + + + + + The geometry type for PostgreSQL spatial extension PostGIS. + + + + + The geography (geodetic) type for PostgreSQL spatial extension PostGIS. + + + + + The PostgreSQL ltree type, each value is a label path "a.label.tree.value", forming a tree in a set. + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL lquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL ltxtquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + Corresponds to the PostgreSQL "int4range" type. + + + + + Corresponds to the PostgreSQL "int8range" type. + + + + + Corresponds to the PostgreSQL "numrange" type. + + + + + Corresponds to the PostgreSQL "tsrange" type. + + + + + Corresponds to the PostgreSQL "tstzrange" type. + + + + + Corresponds to the PostgreSQL "daterange" type. + + + + + Corresponds to the PostgreSQL "int4multirange" type. + + + + + Corresponds to the PostgreSQL "int8multirange" type. + + + + + Corresponds to the PostgreSQL "nummultirange" type. + + + + + Corresponds to the PostgreSQL "tsmultirange" type. + + + + + Corresponds to the PostgreSQL "tstzmultirange" type. + + + + + Corresponds to the PostgreSQL "datemultirange" type. + + + + + Corresponds to the PostgreSQL "array" type, a variable-length multidimensional array of + another type. This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Array | NpgsqlDbType.Integer) + + See https://www.postgresql.org/docs/current/static/arrays.html + + + + Corresponds to the PostgreSQL "range" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Range | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 9.2. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Corresponds to the PostgreSQL "multirange" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Multirange | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 14. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + Can return null when a custom range type is used. + + + Can return null when a plugin type or custom range type is used. + + + Should not be used with display names, first normalize it instead. + + + + A raw representation of the PostgreSQL interval datatype. Use only when or NodaTime + Period do not have sufficient range to handle your values. + + +

+ See https://www.postgresql.org/docs/current/static/datatype-geometric.html. +

+

+ Do not use this type unless you have to: prefer or NodaTime + Period when possible. +

+
+
+ + + Constructs an . + + + + + Months and years, after time for alignment. + + + + + Days, after time for alignment. + + + + + Remaining time unit smaller than a day, in microseconds. + + + + + + + + + + + + + + Wraps a PostgreSQL Write-Ahead Log Sequence Number (see: https://www.postgresql.org/docs/current/datatype-pg-lsn.html) + + + Log Sequence Numbers are a fundamental concept of the PostgreSQL Write-Ahead Log and by that of + PostgreSQL replication. See https://www.postgresql.org/docs/current/wal-internals.html for what they represent. + + This struct provides conversions from/to and and beyond that tries to port + the methods and operators in https://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/utils/adt/pg_lsn.c + but nothing more. + + + + + Zero is used indicate an invalid Log Sequence Number. No XLOG record can begin at zero. + + + + + Initializes a new instance of . + + The value to wrap. + + + + Returns a value indicating whether this instance is equal to a specified + instance. + + A instance to compare to this instance. + if the current instance is equal to the value parameter; + otherwise, . + + + + Compares this instance to a specified and returns an indication of their + relative values. + + A instance to compare to this instance. + A signed number indicating the relative values of this instance and . + + + + Returns a value indicating whether this instance is equal to a specified object. + + An object to compare to this instance + if the current instance is equal to the value parameter; + otherwise, . + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Converts the numeric value of this instance to its equivalent string representation. + + The string representation of the value of this instance, consisting of two hexadecimal numbers of + up to 8 digits each, separated by a slash + + + + Converts the string representation of a Log Sequence Number to a instance. + + A string that represents the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + The parameter is . + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Converts the span representation of a Log Sequence Number to a instance. + + A span containing the characters that represent the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Tries to convert the string representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A string that represents the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is or , is not in the right format, or represents a number + less than or greater than . This parameter is + passed uninitialized; any value originally supplied in result will be overwritten. + + + if c> was converted successfully; otherwise, . + + + + + Tries to convert the span representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A span containing the characters that represent the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is empty, is not in the right format, or represents a number less than + or greater than . This parameter is passed + uninitialized; any value originally supplied in result will be overwritten. + + + if was converted successfully; otherwise, . + + + + Converts the value of a 64-bit unsigned integer to a instance. + + A 64-bit unsigned integer. + A new instance of initialized to . + + + + Converts the value of a instance to a 64-bit unsigned integer value. + + A instance + The contents of as 64-bit unsigned integer. + + + + Returns a value that indicates whether two specified instances of are equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if equals ; otherwise, . + + + + + Returns a value that indicates whether two specified instances of are not + equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if does not equal ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than + another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is less than + another specified instance. + + The first value to compare. + The second value to compare. + + if is less than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than or equal to ; + otherwise, . + + + + + Returns the larger of two values. + + The first value to compare. + The second value to compare. + + The larger of the two values. + + + + + Returns the smaller of two values. + + The first value to compare. + The second value to compare. + + The smaller of the two values. + + + + + Returns a value indicating whether a specified instance is less than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is less than or equal to ; + otherwise, . + + + + + Subtracts two specified values. + + The first value. + The second value. + The number of bytes separating those write-ahead log locations. + + + + Subtract the number of bytes from a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to subtract. + A new instance. + + The resulting instance would represent a number less than + . + + + + + Add the number of bytes to a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to add. + A new instance. + + The resulting instance would represent a number greater than + . + + + + + Represents a PostgreSQL range type. + + The element type of the values in the range. + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Defined by PostgreSQL to represent an empty range. + + + + + Defined by PostgreSQL to represent an infinite lower bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an infinite upper bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an null bound. + Some element types may have specific handling for this value distinct from an infinite or missing value. + + + + + Defined by PostgreSQL to represent a lower inclusive bound. + + + + + Defined by PostgreSQL to represent a lower exclusive bound. + + + + + Defined by PostgreSQL to represent an upper inclusive bound. + + + + + Defined by PostgreSQL to represent an upper exclusive bound. + + + + + Defined by PostgreSQL to separate the values for the upper and lower bounds. + + + + + The used by to convert bounds into . + + + + + True if implements ; otherwise, false. + + + + + Represents the empty range. This field is read-only. + + + + + The lower bound of the range. Only valid when is false. + + + + + The upper bound of the range. Only valid when is false. + + + + + The characteristics of the boundaries. + + + + + True if the lower bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the range is empty; otherwise, false. + + + + + Constructs an with inclusive and definite bounds. + + The lower bound of the range. + The upper bound of the range. + + + + Constructs an with definite bounds. + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + + + Attempts to determine if the range is malformed or implicitly empty. + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + True if the range is implicitly empty; otherwise, false. + + + + + Evaluates the boundary flags. + + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + The boundary characteristics. + + + + + Indicates whether the on the left is equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is equal to the on the right; otherwise, false. + + + + + Indicates whether the on the left is not equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is not equal to the on the right; otherwise, false. + + + + + + + + + + + + + + + + + Parses the well-known text representation of a PostgreSQL range type into a . + + A PosgreSQL range type in a well-known text format. + + The represented by the . + + + Malformed range literal. + + + Malformed range literal. Missing left parenthesis or bracket. + + + Malformed range literal. Missing right parenthesis or bracket. + + + Malformed range literal. Missing comma after lower bound. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Represents a type converter for . + + + + + Adds a to the closed form . + + + + + + + + + + + + + + + + + Represents characteristics of range type boundaries. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + The default flag. The range is not empty and has boundaries that are definite and exclusive. + + + + + The range is empty. E.g. '(0,0)', 'empty'. + + + + + The lower bound is inclusive. E.g. '[0,5]', '[0,5)', '[0,)'. + + + + + The upper bound is inclusive. E.g. '[0,5]', '(0,5]', '(,5]'. + + + + + The lower bound is infinite or indefinite. E.g. '(null,5]', '(-infinity,5]', '(,5]'. + + + + + The upper bound is infinite or indefinite. E.g. '[0,null)', '[0,infinity)', '[0,)'. + + + + + Both the lower and upper bounds are inclusive. + + + + + Both the lower and upper bounds are indefinite. + + + + + The lower bound is both inclusive and indefinite. This represents an error condition. + + + + + The upper bound is both inclusive and indefinite. This represents an error condition. + + + + + Represents a PostgreSQL tsquery. This is the base class for the + lexeme, not, or, and, and "followed by" nodes. + + + + + Node kind + + + + + NodeKind + + + + + Represents the empty tsquery. Should only be used at top level. + + + + + Lexeme + + + + + Not operator + + + + + And operator + + + + + Or operator + + + + + "Followed by" operator + + + + + Constructs an . + + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Parses a tsquery in PostgreSQL's text format. + + + + + + + + + + + + + Returns a value indicating whether this instance and a specified object represent the same value. + + An object to compare to this instance. + if g is equal to this instance; otherwise, . + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + if and are equal; otherwise, . + + + + Indicates whether the values of two specified objects are not equal. + + The first object to compare. + The second object to compare. + if and are not equal; otherwise, . + + + + TsQuery Lexeme node. + + + + + Lexeme text. + + + + + Weights is a bitmask of the Weight enum. + + + + + Prefix search. + + + + + Creates a tsquery lexeme with only lexeme text. + + Lexeme text. + + + + Creates a tsquery lexeme with lexeme text and weights. + + Lexeme text. + Bitmask of enum Weight. + + + + Creates a tsquery lexeme with lexeme text, weights and prefix search flag. + + Lexeme text. + Bitmask of enum Weight. + Is prefix search? + + + + Weight enum, can be OR'ed together. + + + + + None + + + + + D + + + + + C + + + + + B + + + + + A + + + + + + + + + + + TsQuery Not node. + + + + + Child node + + + + + Creates a not operator, with a given child node. + + + + + + + + + + + + Base class for TsQuery binary operators (& and |). + + + + + Left child + + + + + Right child + + + + + Constructs a . + + + + + TsQuery And node. + + + + + Creates an and operator, with two given child nodes. + + + + + + + + + + + + + TsQuery Or Node. + + + + + Creates an or operator, with two given child nodes. + + + + + + + + + + + + + TsQuery "Followed by" Node. + + + + + The distance between the 2 nodes, in lexemes. + + + + + Creates a "followed by" operator, specifying 2 child nodes and the + distance between them in lexemes. + + + + + + + + + + + + + + Represents an empty tsquery. Shold only be used as top node. + + + + + Creates a tsquery that represents an empty query. Should not be used as child node. + + + + + + + + + + + Represents a PostgreSQL tsvector. + + + + + Parses a tsvector in PostgreSQL's text format. + + + + + + + Returns the lexeme at a specific index + + + + + + + Gets the number of lexemes. + + + + + Returns an enumerator. + + + + + + Returns an enumerator. + + + + + + Gets a string representation in PostgreSQL's format. + + + + + + + + + + + + + + + Represents a lexeme. A lexeme consists of a text string and optional word entry positions. + + + + + Gets or sets the text. + + + + + Creates a lexeme with no word entry positions. + + + + + + Creates a lexeme with word entry positions. + + + + + + + Gets a word entry position. + + + + + + + Gets the number of word entry positions. + + + + + Creates a string representation in PostgreSQL's format. + + + + + + Represents a word entry position and an optional weight. + + + + + Creates a WordEntryPos with a given position and weight. + + Position values can range from 1 to 16383; larger numbers are silently set to 16383. + A weight labeled between A and D. + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + The position is a 14-bit unsigned integer indicating the position in the text this lexeme occurs. Cannot be 0. + + + + + Prints this lexeme in PostgreSQL's format, i.e. position is followed by weight (weight is only printed if A, B or C). + + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + D, the default + + + + + C + + + + + B + + + + + A + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + Represents a PostgreSQL point type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL line type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Line Segment type. + + + + + Represents a PostgreSQL box type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Path type. + + + + + Represents a PostgreSQL Polygon type. + + + + + Represents a PostgreSQL Circle type. + + + + + Represents a PostgreSQL inet type, which is a combination of an IPAddress and a subnet mask. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL cidr type. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL tid value + + + https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + + Block number + + + + + Tuple index within block + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + + + + The name of PostgreSQL field that corresponds to this CLR property or field + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + The name of PostgreSQL field that corresponds to this CLR property or field + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + +
+
diff --git a/packages/Npgsql.8.0.3/lib/netstandard2.0/Npgsql.dll b/packages/Npgsql.8.0.3/lib/netstandard2.0/Npgsql.dll new file mode 100644 index 0000000..8d6c8a7 Binary files /dev/null and b/packages/Npgsql.8.0.3/lib/netstandard2.0/Npgsql.dll differ diff --git a/packages/Npgsql.8.0.3/lib/netstandard2.0/Npgsql.xml b/packages/Npgsql.8.0.3/lib/netstandard2.0/Npgsql.xml new file mode 100644 index 0000000..ad3fad0 --- /dev/null +++ b/packages/Npgsql.8.0.3/lib/netstandard2.0/Npgsql.xml @@ -0,0 +1,11559 @@ + + + + Npgsql + + + + + Indicates that the specified method requires the ability to generate new code at runtime, + for example through . + + + This allows tools to understand which methods are unsafe to call when compiling ahead of time. + + + + + Initializes a new instance of the class + with the specified message. + + + A message that contains information about the usage of dynamic code. + + + + + Gets a message that contains information about the usage of dynamic code. + + + + + Gets or sets an optional URL that contains more information about the method, + why it requires dynamic code, and what options a consumer has to deal with it. + + + + + Initializes a new instance of the class. + + + + Indicates that an API is experimental and it may change in the future. + + + Initializes a new instance of the class, specifying the ID that the compiler will use when reporting a use of the API the attribute applies to. + The ID that the compiler will use when reporting a use of the API the attribute applies to. + + + Gets the ID that the compiler will use when reporting a use of the API the attribute applies to. + The unique diagnostic ID. + + + Gets or sets the URL for corresponding documentation. + The API accepts a format string instead of an actual URL, creating a generic URL that includes the diagnostic ID. + The format string that represents a URL to corresponding documentation. + + + + Exception thrown when the program executes an instruction that was thought to be unreachable. + + + + + Initializes a new instance of the class with the default error message. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified message. + + An optional message associated with this attribute instance. + + + + Returns the optional message associated with this attribute instance. + + + + + Returns the optional URL associated with this attribute instance. + + + + + Gets the singleton instance. + + + + + Determines whether two object references refer to the same object instance. + + The first object to compare. + The second object to compare. + + if both and refer to the same object instance + or if both are ; otherwise, . + + + This API is a wrapper around . + It is not necessarily equivalent to calling . + + + + + Returns a hash code for the specified object. The returned hash code is based on the object + identity, not on the contents of the object. + + The object for which to retrieve the hash code. + A hash code for the identity of . + + This API is a wrapper around . + It is not necessarily equivalent to calling . + + + + + Returns a reference to the 0th element of the ReadOnlySpan. If the ReadOnlySpan is empty, returns a reference to fake non-null pointer. Such a reference + can be used for pinning but must never be dereferenced. This is useful for interop with methods that do not accept null pointers for zero-sized buffers. + + + + + Returns a reference to the 0th element of the ReadOnlySpan. If the ReadOnlySpan is empty, returns a reference to fake non-null pointer. Such a reference + can be used for pinning but must never be dereferenced. This is useful for interop with methods that do not accept null pointers for zero-sized buffers. + + + + + Decodes the specified to s using the specified + and outputs the result to . + + The which represents how the data in is encoded. + The to decode to characters. + The destination buffer to which the decoded characters will be written. + The number of chars written to . + Thrown if is not large enough to contain the encoded form of . + Thrown if contains data that cannot be decoded and is configured + to throw an exception when such data is seen. + + + + A set of extension methods to to allow runtime compatibility. + + + + + Appends the provided to the . + + The to append to. + The to append. + + + + Gets a that will complete when this completes, when the specified timeout expires, or when the specified has cancellation requested. + + The representing the asynchronous wait. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The representing the asynchronous wait. + This method reproduces new to the .NET 6.0 API .WaitAsync. + + + + Note that this message doesn't actually contain the data, but only the length. Data is processed + directly from the connector's buffer. + + + + + DataRow is special in that it does not parse the actual contents of the backend message, + because in sequential mode the message will be traversed and processed sequentially by + . + + + + + Error and notice message field codes + + + + + A RowDescription message sent from the backend. + + + See https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + A descriptive record on a single field received from PostgreSQL. + See RowDescription in https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + The field name. + + + + + The object ID of the field's data type. + + + + + The data type size (see pg_type.typlen). Note that negative values denote variable-width types. + + + + + The type modifier (see pg_attribute.atttypmod). The meaning of the modifier is type-specific. + + + + + If the field can be identified as a column of a specific table, the object ID of the table; otherwise zero. + + + + + If the field can be identified as a column of a specific table, the attribute number of the column; otherwise zero. + + + + + The format code being used for the field. + Currently will be text or binary. + In a RowDescription returned from the statement variant of Describe, the format code is not yet known and will always be zero. + + + + + Returns a string that represents the current object. + + + + + Base class for all classes which represent a message sent by the PostgreSQL backend. + + + + + Specifies the type of SQL statement, e.g. SELECT + + + + Streaming + + + Entire value should be buffered + + + Fixed size value should be buffered + + + Custom requirements + + + + CompositeFieldInfo constructor. + + Name of the field. + Type info for reading/writing. + The nominal field type, this may differ from the typeInfo.PgTypeId when the field is a domain type. + + + + Create temporary storage for all values that come before the constructor parameters can be saturated. + + + + + A reference to the type that houses the static method points to. + The continuation + + + A reference to the type that houses the static method points to. + The continuation + + + Note that for BIT(1), this resolver will return a bool by default, to align with SqlClient + (see discussion https://github.com/npgsql/npgsql/pull/362#issuecomment-59622101). + + + A converter to map strongly typed apis onto boxed converter results to produce a strongly typed converter over T. + + + Special value converter to be able to use struct converters as System.Nullable converters, it delegates all behavior to the effective converter. + + + Big endian array of numeric digits + + + + + + + If the destination ends up being too small the builder allocates instead + + + + + + + + + Whether the input consists of any non zero bits + + + Adapted from BigInteger, to allow us to operate directly on stack allocated bits + + + + Hacky temporary measure used by EFCore.PG to extract user-configured enum mappings. Accessed via reflection only. + + + + + A factory which get generate instances of , which describe a database + and the types it contains. When first connecting to a database, Npgsql will attempt to load information + about it via this factory. + + + + + Given a connection, loads all necessary information about the connected database, e.g. its types. + A factory should only handle the exact database type it was meant for, and return null otherwise. + + + An object describing the database to which is connected, or null if the + database isn't of the correct type and isn't handled by this factory. + + + + + An Npgsql resolver for type info. Used by Npgsql to read and write values to PostgreSQL. + + + + + Resolve a type info for a given type and data type name, at least one value will be non-null. + + The clr type being requested. + The postgres type being requested. + Used for configuration state and Npgsql type info or PostgreSQL type catalog lookups. + A result, or null if there was no match. + + + + Represents a connection to a PostgreSQL backend. Unlike NpgsqlConnection objects, which are + exposed to users, connectors are internal to Npgsql and are recycled by the connection pool. + + + + + The physical connection socket to the backend. + + + + + The physical connection stream to the backend, without anything on top. + + + + + The physical connection stream to the backend, layered with an SSL/TLS stream if in secure mode. + + + + + The parsed connection string. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + Buffer used for reading data. + + + + + If we read a data row that's bigger than , we allocate an oversize buffer. + The original (smaller) buffer is stored here, and restored when the connection is reset. + + + + + Buffer used for writing data. + + + + + The secret key of the backend for this connector, used for query cancellation. + + + + + The process ID of the backend for this connector. + + + + + The user name that has been inferred when the connector was opened + + + + + A unique ID identifying this connector, used for logging. Currently mapped to BackendProcessId + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + The current transaction status for this connector. + + + + + A transaction object for this connector. Since only one transaction can be in progress at any given time, + this instance is recycled. To check whether a transaction is currently in progress on this connector, + see . + + + + + The NpgsqlConnection that (currently) owns this connector. Null if the connector isn't + owned (i.e. idle in the pool) + + + + + The number of messages that were prepended to the current message chain, but not yet sent. + Note that this only tracks messages which produce a ReadyForQuery message + + + + + A ManualResetEventSlim used to make sure a cancellation request doesn't run + while we're reading responses for the prepended query + as we can't gracefully handle their cancellation. + + + + + If the connector is currently in COPY mode, holds a reference to the importer/exporter object. + Otherwise null. + + + + + Holds all run-time parameters received from the backend (via ParameterStatus messages) + + + + + Holds all run-time parameters in raw, binary format for efficient handling without allocations. + + + + + If this connector was broken, this contains the exception that caused the break. + + + + + + Used by the pool to indicate that I/O is currently in progress on this connector, so that another write + isn't started concurrently. Note that since we have only one write loop, this is only ever usedto + protect against an over-capacity writes into a connector that's currently *asynchronously* writing. + + + It is guaranteed that the currently-executing + Specifically, reading may occur - and the connector may even be returned to the pool - before this is + released. + + + + + + + + + + + + A lock that's taken while a cancellation is being delivered; new queries are blocked until the + cancellation is delivered. This reduces the chance that a cancellation meant for a previous + command will accidentally cancel a later one, see #615. + + + + + A lock that's taken to make sure no other concurrent operation is running. + Break takes it to set the state of the connector. + Anyone else should immediately check the state and exit + if the connector is closed. + + + + + A lock that's used to wait for the Cleanup to complete while breaking the connection. + + + + + The command currently being executed by the connector, null otherwise. + Used only for concurrent use error reporting purposes. + + + + + The connector source (e.g. pool) from where this connector came, and to which it will be returned. + Note that in multi-host scenarios, this references the host-specific rather than the + . + + + + + Contains the UTC timestamp when this connector was opened, used to implement + . + + + + + The minimum timeout that can be set on internal commands such as COMMIT, ROLLBACK. + + Precision is seconds + + + + Gets the current state of the connector + + + + + Returns whether the connector is open, regardless of any task it is currently performing + + + + + Opens the physical connection to the server. + + Usually called by the RequestConnector + Method of the connection pool manager. + + + + Prepends a message to be sent at the beginning of the next message chain. + + + + + Reads backend messages and discards them, stopping only after a message of the given type has + been seen. Only a sync I/O version of this method exists - in async flows we inline the loop + rather than calling an additional async method, in order to avoid the overhead. + + + + + Handles a new transaction indicator received on a ReadyForQuery message + + + + + Returns whether SSL is being used for the connection + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Creates another connector and sends a cancel request through it for this connector. This method never throws, but returns + whether the cancellation attempt failed. + + + + if the cancellation request was successfully delivered, or if it was skipped because a previous + request was already sent. if the cancellation request could not be delivered because of an exception + (the method logs internally). + + + This does not indicate whether the cancellation attempt was successful on the PostgreSQL side - only if the request was + delivered. + + + + + + Starts a new cancellable operation within an ongoing user action. This should only be used if a single user + action spans several different actions which each has its own cancellation tokens. For example, a command + execution is a single user action, but spans ExecuteReaderQuery, NextResult, Read and so forth. + + + Only one level of nested operations is supported. It is an error to call this method if it has previously + been called, and the returned was not disposed. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the + cancellation, and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or + a timeout occurs, followed by a client-side socket cancellation once + has elapsed. If , + PostgreSQL cancellation will be skipped and client-socket cancellation will occur immediately. + + + + + Closes ongoing operations, i.e. an open reader exists or a COPY operation still in progress, as + part of a connection close. + + + + + Called when an unexpected message has been received during an action. Breaks the + connector and returns the appropriate message. + + + + + Called when a connector becomes completely unusable, e.g. when an unexpected I/O exception is raised or when + we lose protocol sync. + Note that fatal errors during the Open phase do *not* pass through here. + + The exception that caused the break. + The exception given in for chaining calls. + + + + Closes the socket and cleans up client-side resources associated with this connector. + + + This method doesn't actually perform any meaningful I/O, and therefore is sync-only. + + + + + Called when a pooled connection is closed, and its connector is returned to the pool. + Resets the connector back to its initial state, releasing server-side sources + (e.g. prepared statements), resetting parameters to their defaults, and resetting client-side + state + + + + + The connector may have allocated an oversize read buffer, to hold big rows in non-sequential reading. + This switches us back to the original one and returns the buffer to . + + + + + Starts a user action. This makes sure that another action isn't already in progress, handles synchronization with keepalive, + and sets up cancellation. + + The new state to be set when entering this user action. + + The that is starting execution - if an is + thrown, it will reference this. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the cancellation, + and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or a timeout + occurs, followed by a client-side socket cancellation once has + elapsed. If , PostgreSQL cancellation will be skipped and client-socket cancellation will occur + immediately. + + + + + An IDisposable wrapper around . + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Creates and returns a object associated with the . + + The text of the query. + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + This Stream is placed between NegotiateStream and the socket's NetworkStream (or SSLStream). It intercepts + traffic and performs the following operations: + * Outgoing messages are framed in PostgreSQL's PasswordMessage, and incoming are stripped of it. + * NegotiateStream frames payloads with a 5-byte header, which PostgreSQL doesn't understand. This header is + stripped from outgoing messages and added to incoming ones. + + + See https://referencesource.microsoft.com/#System/net/System/Net/_StreamFramer.cs,16417e735f0e9530,references + + + + + Expresses the exact state of a connector. + + + + + The connector has either not yet been opened or has been closed. + + + + + The connector is currently connecting to a PostgreSQL server. + + + + + The connector is connected and may be used to send a new query. + + + + + The connector is waiting for a response to a query which has been sent to the server. + + + + + The connector is currently fetching and processing query results. + + + + + The connector is currently waiting for asynchronous notifications to arrive. + + + + + The connection was broken because an unexpected error occurred which left it in an unknown state. + This state isn't implemented yet. + + + + + The connector is engaged in a COPY operation. + + + + + The connector is engaged in streaming replication. + + + + + Currently not in a transaction block + + + + + Currently in a transaction block + + + + + Currently in a failed transaction block (queries will be rejected until block is ended) + + + + + A new transaction has been requested but not yet transmitted to the backend. It will be transmitted + prepended to the next query. + This is a client-side state option only, and is never transmitted from the backend. + + + + + Specifies how to load/parse DataRow messages as they're received from the backend. + + + + + Load DataRows in non-sequential mode + + + + + Load DataRows in sequential mode + + + + + Skip DataRow messages altogether + + + + + Base class for implementations which provide information about PostgreSQL and PostgreSQL-like databases + (e.g. type definitions, capabilities...). + + + + + The hostname of IP address of the database. + + + + + The TCP port of the database. + + + + + The database name. + + + + + The version of the PostgreSQL database we're connected to, as reported in the "server_version" parameter. + Exposed via . + + + + + The PostgreSQL version string as returned by the server_version option. Populated during loading. + + + + + Whether the backend supports range types. + + + + + Whether the backend supports multirange types. + + + + + Whether the backend supports enum types. + + + + + Whether the backend supports the CLOSE ALL statement. + + + + + Whether the backend supports advisory locks. + + + + + Whether the backend supports the DISCARD SEQUENCES statement. + + + + + Whether the backend supports the UNLISTEN statement. + + + + + Whether the backend supports the DISCARD TEMP statement. + + + + + Whether the backend supports the DISCARD statement. + + + + + Reports whether the backend uses the newer integer timestamp representation. + + + + + Whether the database supports transactions. + + + + + Indexes backend types by their type OID. + + + + + Indexes backend types by their PostgreSQL internal name, including namespace (e.g. pg_catalog.int4). + Only used for enums and composites. + + + + + Indexes backend types by their PostgreSQL name, not including namespace. + If more than one type exists with the same name (i.e. in different namespaces) this + table will contain an entry with a null value. + Only used for enums and composites. + + + + + Initializes the instance of . + + + + + Initializes the instance of . + + + + + Provides all PostgreSQL types detected in this database. + + + + + + Parses a PostgreSQL server version (e.g. 10.1, 9.6.3) and returns a CLR Version. + + + + + Registers a new database info factory, which is used to load information about databases. + + + + + A buffer used by Npgsql to read data from the socket efficiently. + Provides methods which decode different values types and tracks the current position. + + + + + Timeout for sync and async reads + + + + + The total byte length of the buffer. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + The minimum buffer size possible. + + + + + Ensures that bytes are available in the buffer, and if + not, reads from the socket until enough is available. + + + + + Does not perform any I/O - assuming that the bytes to be skipped are in the memory buffer. + + + + + Skip a given number of bytes. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. If any character could not be decoded, a question + mark character is returned instead of throwing an exception. + + + + + Seeks the first null terminator (\0) and returns the string up to it. Reads additional data from the network if a null + terminator isn't found in the buffered data. + + + + Does not throw ODE. + + + + A buffer used by Npgsql to write data to the socket efficiently. + Provides methods which encode different values types and tracks the current position. + + + + + Timeout for sync and async writes + + + + + The total byte length of the buffer. + + + + + The minimum buffer size possible. + + + + + Returns all contents currently written to the buffer (but not flushed). + Useful for pre-generating messages. + + + + + Whether this converter can handle the given format and with which buffer requirements. + + The data format. + Returns the buffer requirements. + Returns true if the given data format is supported. + The buffer requirements should not cover database NULL reads or writes, these are handled by the caller. + + + Never DbNull (struct types) + + + DbNull when *user code* + + + DbNull when value is null + + + DbNull when value is null or DBNull + + + + Gets the appropriate converter solely based on PgTypeId. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to read with based on the given field info. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to write with based on the given value. + + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are + cached once used. Array or other collection converters depend on this to cache their own converter - which wraps the element + converter - with the cache key being the element converter reference. + + + + ReadBytes without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + ReadBytesAsync without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + + + + + The stream length, if any + + + + Used by GetSchema to be able to attempt to resolve all type catalog types without exceptions. + + + + Whether options should return a portable identifier (data type name) to prevent any generated id (oid) confusion across backends, this comes with a perf penalty. + + + A reference to the type that houses the static method points to. + The continuation + + + Throws if the instance is a PgResolverTypeInfo. + + + When result is null, the value was interpreted to be a SQL NULL. + + + When result is null or DBNull, the value was interpreted to be a SQL NULL. + + + Whether Converter.TypeToConvert matches PgTypeInfo.Type, if it doesn't object apis should be used. + + + + Gets a that can be used to write to the underlying buffer. + + Blocking flushes during writes that were expected to be non-blocking and vice versa cause an exception to be thrown unless allowMixedIO is set to true, false by default. + The stream. + + + + Represents the fully-qualified name of a PostgreSQL type. + + + + + The maximum length of names in an unmodified PostgreSQL installation. + + + We need to respect this to get to valid names when deriving them (for multirange/arrays etc). + This does not include the namespace. + + + + + Well-known PostgreSQL data type names. + + + + Base field type shared between tables and composites. + + + + A discriminated union of and . + + + + + + + + + + When this flag is true, and both type and pgTypeId are non null, a default info for the pgTypeId can be returned if an exact match + can't be found. + + + + + + + + + + + + Signals whether a resolver based TypeInfo can keep its PgTypeId undecided or whether it should follow mapping.DataTypeName. + + + + Match when the clr type and datatype name both match. + It's also the only requirement that participates in clr type fallback matching. + + + Match when the datatype name or CLR type matches while the other also matches or is absent. + + + Match when the datatype name matches and the clr type also matches or is absent. + + + A factory for well-known PgConverters. + + + Returns the first default converter or the first converter that matches both type and dataTypeName. + If just a type was passed and no default was found we return the first converter with a type match. + + + Returns whether type matches any of the types we register pg arrays as. + + + + Launches MIT Kerberos klist and parses out the default principal from it. + Caches the result. + + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A component which translates a CLR name (e.g. SomeClass) into a database name (e.g. some_class) + according to some scheme. + Used for mapping enum and composite types. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which preserves CLR names (e.g. SomeClass) when mapping names to the database. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which converts standard CLR names (e.g. SomeClass) to snake-case database + names (some_class) + + + + + Creates a new . + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Creates a new . + + + Uses the legacy naming convention if , otherwise it uses the new naming convention. + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + Converts a string to its snake_case equivalent. + + The value to convert. + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Controls whether to place error barriers between all batch commands within this batch. Default to . + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Enabling error barriers ensures that errors do not affect other commands in the batch. + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message between each command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + To control error barriers on a command-by-command basis, see . + + + + + + Marks all of the batch's result columns as either known or unknown. + Unknown results column are requested them from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Initializes a new . + + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of a object. + + An object. + + + + Returns whether the method is implemented. + + + + + Appends an error barrier after this batch command. Defaults to the value of on the + batch. + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Appending an error barrier ensures that errors from this command (or previous ones) won't cause later commands to be skipped, + and that errors from later commands won't cause this command (or previous ones) to be rolled back). + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message after this command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + Controlling error barriers on a command-by-command basis is an advanced feature, consider enabling error barriers for the entire + batch via . + + + + + + The number of rows affected or retrieved. + + + See the command tag in the CommandComplete message for the meaning of this value for each , + https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + + + + Specifies the type of query, e.g. SELECT. + + + + + For an INSERT, the object ID of the inserted row if is 1 and + the target table has OIDs; otherwise 0. + + + + + The SQL as it will be sent to PostgreSQL, after any rewriting performed by Npgsql (e.g. named to positional parameter + placeholders). + + + + + The list of parameters, ordered positionally, as it will be sent to PostgreSQL. + + + If the user provided positional parameters, this references the (in batching mode) or the list + backing (in non-batching) mode. If the user provided named parameters, this is a + separate list containing the re-ordered parameters. + + + + + The RowDescription message for this query. If null, the query does not return rows (e.g. INSERT) + + + + + If this statement has been automatically prepared, references the . + Null otherwise. + + + + + Holds the server-side (prepared) ASCII statement name. Empty string for non-prepared statements. + + + + + Whether this statement has already been prepared (including automatic preparation). + + + + + Returns a prepared statement for this statement (including automatic preparation). + + + + + Initializes a new . + + + + + Initializes a new . + + The text of the . + + + + Returns the . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides an API for a binary COPY TO operation, a high-performance data export mechanism from + a PostgreSQL table. Initiated by + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be read. + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be read. + The value of the column + + + + Returns whether the current column is null. + + + + + Skips the current column without interpreting its value. + + + + + Skips the current column without interpreting its value. + + + + + Cancels an ongoing export. + + + + + Async cancels an ongoing export. + + + + + Completes that binary export and sets the connection back to idle state + + + + + Async completes that binary export and sets the connection back to idle state + + + + + + Provides an API for a binary COPY FROM operation, a high-performance data import mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The number of columns in the current (not-yet-written) row. + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Writes a single column in the current row. + + The value to be written + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row. + + The value to be written + + An optional token to cancel the asynchronous operation. The default value is . + + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single null column value. + + + + + Writes a single null column value. + + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + An array of column values to be written as a single row + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + + An optional token to cancel the asynchronous operation. The default value is . + + An array of column values to be written as a single row + + + + Completes the import operation. The writer is unusable after this operation. + + + + + Completes the import operation. The writer is unusable after this operation. + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + Represents a SQL statement or function (stored procedure) to execute + against a PostgreSQL database. This class cannot be inherited. + + + + + If this command is (explicitly) prepared, references the connector on which the preparation happened. + Used to detect when the connector was changed (i.e. connection open/close), meaning that the command + is no longer prepared. + + + + + Whether this is wrapped by an . + + + + + Returns details about each statement that this command has executed. + Is only populated when an Execute* method is called. + + + + + Whether this command is cached by and returned by . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the text of the query. + + The text of the query. + + + + Initializes a new instance of the class with the text of the query and a + . + + The text of the query. + A that represents the connection to a PostgreSQL server. + + + + Initializes a new instance of the class with the text of the query, a + , and the . + + The text of the query. + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + Used when this instance is wrapped inside an . + + + + + Used when this instance is wrapped inside an . + + + + + Gets or sets the SQL statement or function (stored procedure) to execute at the data source. + + The SQL statement or function (stored procedure) to execute. The default is an empty string. + + + + Gets or sets the wait time (in seconds) before terminating the attempt to execute a command and generating an error. + + The time (in seconds) to wait for the command to execute. The default value is 30 seconds. + + + + Gets or sets a value indicating how the property is to be interpreted. + + + One of the values. The default is . + + + + + DB connection. + + + + + Gets or sets the used by this instance of the . + + The connection to a data source. The default value is . + + + + Design time visible. + + + + + Gets or sets how command results are applied to the DataRow when used by the + DbDataAdapter.Update(DataSet) method. + + One of the values. + + + + Returns whether this query will execute as a prepared (compiled) query. + + + + + Marks all of the query's result columns as either known or unknown. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Marks the query's result columns as known or unknown, on a column-by-column basis. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + If the query includes several queries (e.g. SELECT 1; SELECT 2), this will only apply to the first + one. The rest of the queries will be fetched and parsed as usual. + + The array size must correspond exactly to the number of result columns the query returns, or an + error will be raised. + + + + + The current state of the command + + + + + Creates a new instance of an object. + + A object. + + + + Creates a new instance of a object. + + An object. + + + + DB parameter collection. + + + + + Gets the . + + The parameters of the SQL statement or function (stored procedure). The default is an empty collection. + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Executes a SQL statement against the connection and returns the number of rows affected. + + The number of rows affected if known; -1 otherwise. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the number of rows affected if known; -1 otherwise. + + + + Executes the query, and returns the first column of the first row + in the result set returned by the query. Extra columns or rows are ignored. + + The first column of the first row in the result set, + or a null reference if the result set is empty. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the first column of the + first row in the result set, or a null reference if the result set is empty. + + + + Executes the command text against the connection. + + A task representing the operation. + + + + Executes the command text against the connection. + + An instance of . + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + A task representing the operation. + + + + An asynchronous version of , which executes + the against the + and returns a . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + An asynchronous version of , + which executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + DB transaction. + + + + + This property is ignored by Npgsql. PostgreSQL only supports a single transaction at a given time on + a given connection, and all commands implicitly run inside the current transaction started via + + + + + + Attempts to cancel the execution of an . + + As per the specs, no exception will be thrown by this method in case of failure. + + + + + + + Fixes up the text/binary flag on result columns. + Since Prepare() describes a statement rather than a portal, the resulting RowDescription + will have text format on all result columns. Fix that up. + + + Note that UnknownResultTypeList only applies to the first query, while AllResultTypesAreUnknown applies + to all of them. + + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + This event is unsupported by Npgsql. Use instead. + + + + + This class creates database commands for automatic insert, update and delete operations. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The adapter. + + + + Gets or sets the beginning character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The beginning character or characters to use. The default is an empty string. + + + + + + + + Gets or sets the ending character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The ending character or characters to use. The default is an empty string. + + + + + + + + + This method is responsible to derive the command parameter list with values obtained from function definition. + It clears the Parameters collection of command. Also, if there is any parameter type which is not supported by Npgsql, an InvalidOperationException will be thrown. + Parameters name will be parameter1, parameter2, ... for CommandType.StoredProcedure and named after the placeholder for CommandType.Text + + NpgsqlCommand whose function parameters will be obtained. + + + + Gets the automatically generated object required + to perform insertions at the data source. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated object required to perform insertions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform updates at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform updates. + + + + + Gets the automatically generated object required to perform updates + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform updates. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform deletions at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform deletions. + + + + + Gets the automatically generated object required to perform deletions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform deletions. + + + + + Applies the parameter information. + + The parameter. + The row. + Type of the statement. + If set to [where clause]. + + + + Returns the name of the specified parameter in the format of @p#. + + The number to be included as part of the parameter's name.. + + The name of the parameter with the specified number appended as part of the parameter name. + + + + + Returns the full parameter name, given the partial parameter name. + + The partial name of the parameter. + + The full parameter name corresponding to the partial parameter name requested. + + + + + Returns the placeholder for the parameter in the associated SQL statement. + + The number to be included as part of the parameter's name. + + The name of the parameter with the specified number appended. + + + + + Registers the to handle the event for a . + + The to be used for the update. + + + + Adds an event handler for the event. + + The sender + A instance containing information about the event. + + + + Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier, including properly escaping any embedded quotes in the identifier. + + The original unquoted identifier. + + The quoted version of the identifier. Embedded quotes within the identifier are properly escaped. + + + + + Unquoted identifier parameter cannot be null + + + + Given a quoted identifier, returns the correct unquoted form of that identifier, including properly un-escaping any embedded quotes in the identifier. + + The identifier that will have its embedded quotes removed. + + The unquoted identifier, with embedded quotes properly un-escaped. + + + + + Quoted identifier parameter cannot be null + + + + This class represents a connection to a PostgreSQL server. + + + + + The connection string, without the password after open (unless Persist Security Info=true) + + + + + The original connection string provided by the user, including the password. + + + + + The physical connection to the database. This is when the connection is closed, + and also when it is open in multiplexing mode and unbound (e.g. not in a transaction). + + + + + The parsed connection string. Set only after the connection is opened. + + + + + Flag used to make sure we never double-close a connection, returning it twice to the pool. + + + + + The global type mapper, which contains defaults used by all new connections. + Modify mappings on this mapper to affect your entire application. + + + + + Connection-level type mapping is no longer supported. See the 7.0 release notes for configuring type mapping on NpgsqlDataSource. + + + + + The default TCP/IP port for PostgreSQL. + + + + + Maximum value for connection timeout. + + + + + Tracks when this connection was bound to a physical connector (e.g. at open-time, when a transaction + was started...). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Opens a database connection with the property settings specified by the . + + + + + This is the asynchronous version of . + + + Do not invoke other methods and properties of the object until the returned Task is complete. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + The connection string that includes the server name, + the database name, and other parameters needed to establish + the initial connection. The default value is an empty string. + + + + + Gets or sets the delegate used to generate a password for new database connections. + + +

+ This delegate is executed when a new database connection is opened that requires a password. +

+

+ The and connection + string properties have precedence over this delegate: it will not be executed if a password is specified, or if the specified or + default Passfile contains a valid entry. +

+

+ Due to connection pooling this delegate is only executed when a new physical connection is opened, not when reusing a connection + that was previously opened from the pool. +

+
+
+ + + Backend server host name. + + + + + Backend server port. + + + + + Gets the time (in seconds) to wait while trying to establish a connection + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a connection to open. The default value is 15 seconds. + + + + Gets the time (in seconds) to wait while trying to execute a command + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a command to complete. The default value is 30 seconds. + + + + Gets the name of the current database or the database to be used after a connection is opened. + + The name of the current database or the name of the database to be + used after a connection is opened. The default value is the empty string. + + + + Gets the string identifying the database server (host and port) + + + The name of the database server (host and port). If the connection uses a Unix-domain socket, + the path to that socket is returned. The default value is the empty string. + + + + + User name. + + + + + Gets the current state of the connection. + + A bitwise combination of the values. The default is Closed. + + + + Gets whether the current state of the connection is Open or Closed + + ConnectionState.Open, ConnectionState.Closed or ConnectionState.Connecting + + + + A cached command handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + Creates and returns a + object associated with the . + + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + A cached batch handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + Creates and returns a object associated with the . + + A object. + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Begins a database transaction. + + A object representing the new transaction. + + Nested transactions are not supported. + Transactions created by this method will have the isolation level. + + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Enlist transaction. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases all resources used by the . + + when called from ; + when being called from the finalizer. + + + + Releases all resources used by the . + + + + + Fires when PostgreSQL notices are received from PostgreSQL. + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + Note that notices are very different from notifications (see the event). + + + + + Fires when PostgreSQL notifications are received from PostgreSQL. + + + PostgreSQL notifications are sent when your connection has registered for notifications on a specific channel via the + LISTEN command. NOTIFY can be used to generate such notifications, allowing for an inter-connection communication channel. + + Note that notifications are very different from notices (see the event). + + + + + Returns whether SSL is being used for the connection. + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Selects the local Secure Sockets Layer (SSL) certificate used for authentication. + + + See + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + + + Cannot be used in conjunction with , and + . + + + See . + + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Reports whether the backend uses the newer integer timestamp representation. + Note that the old floating point representation is not supported. + Meant for use by type plugins (e.g. NodaTime) + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Holds all PostgreSQL parameters received for this connection. Is updated if the values change + (e.g. as a result of a SET command). + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds, passed to . + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value is passed to . + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds. + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value as + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Checks whether the connection is currently bound to a connector, and if so, returns it via + . + + + + + Binds this connection to a physical connector. This happens when opening a non-multiplexing connection, + or when starting a transaction on a multiplexed connection. + + + + + Ends binding scope to the physical connection and returns it to the pool. Only useful with multiplexing on. + + + After this method is called, under no circumstances the physical connection (connector) should ever be used if multiplexing is on. + See #3249. + + + + + Returns the supported collections + + + + + Returns the schema collection specified by the collection name. + + The collection name. + The collection specified. + + + + Returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + The collection specified. + + + + Asynchronously returns the supported collections. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name. + + The collection name. + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Creates a closed connection with the connection string and authentication details of this message. + + + + + Clones this connection, replacing its connection string with the given one. + This allows creating a new connection with the same security information + (password, SSL callbacks) while changing other connection parameters (e.g. + database or pooling) + + + + + This method changes the current database by disconnecting from the actual + database and connecting to the specified. + + The name of the database to use in place of the current database. + + + + DB provider factory. + + + + + Clears the connection pool. All idle physical connections in the pool of the given connection are + immediately closed, and any busy connections which were opened before was called + will be closed when returned to the pool. + + + + + Clear all connection pools. All idle physical connections in all pools are immediately closed, and any busy + connections which were opened before was called will be closed when returned + to their pool. + + + + + Unprepares all prepared statements on this connection. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + This event is unsupported by Npgsql. Use instead. + + + + + The connection is currently not bound to a connector. + + + + + The connection is bound to its connector for the scope of the entire connection + (i.e. non-multiplexed connection). + + + + + The connection is bound to its connector for the scope of a transaction. + + + + + The connection is bound to its connector for the scope of a COPY operation. + + + + + The connection is bound to its connector for the scope of a single reader. + + + + + The connection is bound to its connector for an unspecified, temporary scope; the code that initiated + the binding is also responsible to unbind it. + + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notice information (e.g. message, severity...). + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notification payload. + + + + Represents a method that allows the application to provide a certificate collection to be used for SSL client authentication + + + A to be filled with one or more client + certificates. + + + + + Represents a method that allows the application to provide a password at connection time in code rather than configuration + + Hostname + Port + Database Name + User + A valid password for connecting to the database + + + + Provides a simple way to create and manage the contents of connection strings used by + the class. + + + + + Cached DataSource value to reduce allocations on NpgsqlConnection.DataSource.get + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class. + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class, optionally using ODBC rules for quoting values. + + true to use {} to delimit fields; false to use quotation marks. + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class and sets its . + + + + + GeneratedAction and GeneratedActions exist to be able to produce a streamlined binary footprint for NativeAOT. + An idiomatic approach where each action has its own method would double the binary size of NpgsqlConnectionStringBuilder. + + + + + Gets or sets the value associated with the specified key. + + The key of the item to get or set. + The value associated with the specified key. + + + + Adds an item to the . + + The key-value pair to be added. + + + + Removes the entry with the specified key from the DbConnectionStringBuilder instance. + + The key of the key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Removes the entry from the DbConnectionStringBuilder instance. + + The key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Clears the contents of the instance. + + + + + Determines whether the contains a specific key. + + The key to locate in the . + true if the contains an entry with the specified key; otherwise false. + + + + Determines whether the contains a specific key-value pair. + + The item to locate in the . + true if the contains the entry; otherwise false. + + + + Retrieves a value corresponding to the supplied key from this . + + The key of the item to retrieve. + The value corresponding to the key. + true if keyword was found within the connection string, false otherwise. + + + + The hostname or IP address of the PostgreSQL server to connect to. + + + + + The TCP/IP port of the PostgreSQL server. + + + + + The PostgreSQL database to connect to. + + + + + The username to connect with. + + + + + The password to connect with. + + + + + Path to a PostgreSQL password file (PGPASSFILE), from which the password would be taken. + + + + + The optional application name parameter to be sent to the backend during connection initiation. + + + + + Whether to enlist in an ambient TransactionScope. + + + + + Gets or sets the schema search path. + + + + + Gets or sets the client_encoding parameter. + + + + + Gets or sets the .NET encoding that will be used to encode/decode PostgreSQL string data. + + + + + Gets or sets the PostgreSQL session timezone, in Olson/IANA database format. + + + + + Controls whether SSL is required, disabled or preferred, depending on server support. + + + + + Location of a client certificate to be sent to the server. + + + + + Location of a client key for a client certificate to be sent to the server. + + + + + Password for a key for a client certificate. + + + + + Location of a CA certificate used to validate the server certificate. + + + + + Whether to check the certificate revocation list during authentication. + False by default. + + + + + The Kerberos service name to be used for authentication. + + + + + The Kerberos realm to be used for authentication. + + + + + Gets or sets a Boolean value that indicates if security-sensitive information, such as the password, is not returned as part of the connection if the connection is open or has ever been in an open state. + + + + + When enabled, parameter values are logged when commands are executed. Defaults to false. + + + + + When enabled, PostgreSQL error details are included on and + . These can contain sensitive data. + + + + + Controls whether channel binding is required, disabled or preferred, depending on server support. + + + + + Whether connection pooling should be used. + + + + + The minimum connection pool size. + + + + + The maximum connection pool size. + + + + + The time to wait before closing idle connections in the pool if the count + of all connections exceeds MinPoolSize. + + The time (in seconds) to wait. The default value is 300. + + + + How many seconds the pool waits before attempting to prune idle connections that are beyond + idle lifetime (. + + The interval (in seconds). The default value is 10. + + + + The total maximum lifetime of connections (in seconds). Connections which have exceeded this value will be + destroyed instead of returned from the pool. This is useful in clustered configurations to force load + balancing between a running server and a server just brought online. + + The time (in seconds) to wait, or 0 to to make connections last indefinitely (the default). + + + + The time to wait (in seconds) while trying to establish a connection before terminating the attempt and generating an error. + Defaults to 15 seconds. + + + + + The time to wait (in seconds) while trying to execute a command before terminating the attempt and generating an error. + Defaults to 30 seconds. + + + + + The time to wait (in milliseconds) while trying to read a response for a cancellation request for a timed out or cancelled query, before terminating the attempt and generating an error. + Zero for infinity, -1 to skip the wait. + Defaults to 2000 milliseconds. + + + + + Determines the preferred PostgreSQL target server type. + + + + + Enables balancing between multiple hosts by round-robin. + + + + + Controls for how long the host's cached state will be considered as valid. + + + + + The number of seconds of connection inactivity before Npgsql sends a keepalive query. + Set to 0 (the default) to disable. + + + + + Whether to use TCP keepalive with system defaults if overrides isn't specified. + + + + + The number of seconds of connection inactivity before a TCP keepalive query is sent. + Use of this option is discouraged, use instead if possible. + Set to 0 (the default) to disable. + + + + + The interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received. + Defaults to the value of . must be non-zero as well. + + + + + Determines the size of the internal buffer Npgsql uses when reading. Increasing may improve performance if transferring large values from the database. + + + + + Determines the size of the internal buffer Npgsql uses when writing. Increasing may improve performance if transferring large values to the database. + + + + + Determines the size of socket read buffer. + + + + + Determines the size of socket send buffer. + + + + + The maximum number SQL statements that can be automatically prepared at any given point. + Beyond this number the least-recently-used statement will be recycled. + Zero (the default) disables automatic preparation. + + + + + The minimum number of usages an SQL statement is used before it's automatically prepared. + Defaults to 5. + + + + + If set to true, a pool connection's state won't be reset when it is closed (improves performance). + Do not specify this unless you know what you're doing. + + + + + Load table composite type definitions, and not just free-standing composite types. + + + + + Set the replication mode of the connection + + + This property and its corresponding enum are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Set PostgreSQL configuration parameter default values for the connection. + + + + + Configure the way arrays of value types are returned when requested as object instances. + + + + + Enables multiplexing, which allows more efficient use of connections. + + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A compatibility mode for special PostgreSQL server types. + + + + + Whether to trust the server certificate without validating it. + + + + + The time to wait (in seconds) while trying to execute a an internal command before terminating the attempt and generating an error. + + + + + Determines whether the specified object is equal to the current object. + + + + + Hash function. + + + + + + Gets an containing the keys of the . + + + + + Gets an containing the values in the . + + + + + Copies the elements of the to an Array, starting at a particular Array index. + + + The one-dimensional Array that is the destination of the elements copied from . + The Array must have zero-based indexing. + + + The zero-based index in array at which copying begins. + + + + + Returns an enumerator that iterates through the . + + + + + + + + + Marks on which participate in the connection + string. Optionally holds a set of synonyms for the property. + + + + + Holds a list of synonyms for the property. + + + + + Creates a . + + + + + Creates a . + + + + + An option specified in the connection string that activates special compatibility features. + + + + + No special server compatibility mode is active + + + + + The server is an Amazon Redshift instance. + + + + + The server is doesn't support full type loading from the PostgreSQL catalogs, support the basic set + of types via information hardcoded inside Npgsql. + + + + + Specifies how to manage SSL. + + + + + SSL is disabled. If the server requires SSL, the connection will fail. + + + + + Prefer non-SSL connections if the server allows them, but allow SSL connections. + + + + + Prefer SSL connections if the server allows them, but allow connections without SSL. + + + + + Fail the connection if the server doesn't support SSL. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate with host's name. + + + + + Specifies how to manage channel binding. + + + + + Channel binding is disabled. If the server requires channel binding, the connection will fail. + + + + + Prefer channel binding if the server allows it, but connect without it if not. + + + + + Fail the connection if the server doesn't support channel binding. + + + + + Specifies how the mapping of arrays of + value types + behaves with respect to nullability when they are requested via an API returning an . + + + + + Arrays of value types are always returned as non-nullable arrays (e.g. int[]). + If the PostgreSQL array contains a NULL value, an exception is thrown. This is the default mode. + + + + + Arrays of value types are always returned as nullable arrays (e.g. int?[]). + + + + + The type of array that gets returned is determined at runtime. + Arrays of value types are returned as non-nullable arrays (e.g. int[]) + if the actual instance that gets returned doesn't contain null values + and as nullable arrays (e.g. int?[]) if it does. + + When using this setting, make sure that your code is prepared to the fact + that the actual type of array instances returned from APIs like + may change on a row by row base. + + + + Specifies whether the connection shall be initialized as a physical or + logical replication connection + + + This enum and its corresponding property are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Replication disabled. This is the default + + + + + Physical replication enabled + + + + + Logical replication enabled + + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + This class represents an adapter from many commands: select, update, insert and delete to fill a . + + + + + Row updated event. + + + + + Row updating event. + + + + + Default constructor. + + + + + Constructor. + + + + + + Constructor. + + + + + + + Constructor. + + + + + + + Create row updated event. + + + + + Create row updating event. + + + + + Raise the RowUpdated event. + + + + + + Raise the RowUpdating event. + + + + + + Delete command. + + + + + Select command. + + + + + Update command. + + + + + Insert command. + + + + + Reads a forward-only stream of rows from a data source. + + + + + The behavior of the command with which this reader was executed. + + + + + In multiplexing, this is as the sending is managed in the write multiplexing loop, + and does not need to be awaited by the reader. + + + + + Holds the list of statements being executed by this reader. + + + + + The index of the current query resultset we're processing (within a multiquery) + + + + + Records, for each column, its starting offset and length in the current row. + Used only in non-sequential mode. + + + + + The index of the column that we're on, i.e. that has already been parsed, is + is memory and can be retrieved. Initialized to -1, which means we're on the column + count (which comes before the first column). + + + + + The position in the buffer at which the current data row message ends. + Used only when the row is consumed non-sequentially. + + + + + Determines, if we can consume the row non-sequentially. + Mostly useful for a sequential mode, when the row is already in the buffer. + Should always be true for the non-sequential mode. + + + + + The RowDescription message for the current resultset being processed + + + + + Stores the last converter info resolved by column, to speed up repeated reading. + + + + + Whether the current result set has rows + + + + + Is raised whenever Close() is called. + + + + + Advances the reader to the next record in a result set. + + true if there are more rows; otherwise false. + + The default position of a data reader is before the first record. Therefore, you must call Read to begin accessing data. + + + + + This is the asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Advances the reader to the next result when reading the results of a batch of statements. + + + + + + This is the asynchronous version of NextResult. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Internal implementation of NextResult + + + + + Note that in SchemaOnly mode there are no resultsets, and we read nothing from the backend (all + RowDescriptions have already been processed and are available) + + + + + Gets a value indicating the depth of nesting for the current row. Always returns zero. + + + + + Gets a value indicating whether the data reader is closed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. -1 for SELECT statements; 0 if no rows were affected or the statement failed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. 0 for SELECT statements, if no rows were affected or the statement failed. + + + + + Returns details about each statement that this reader will or has executed. + + + Note that some fields (i.e. rows and oid) are only populated as the reader + traverses the result. + + For commands with multiple queries, this exposes the number of rows affected on + a statement-by-statement basis, unlike + which exposes an aggregation across all statements. + + + + + Gets a value that indicates whether this DbDataReader contains one or more rows. + + + + + Indicates whether the reader is currently positioned on a row, i.e. whether reading a + column is possible. + This property is different from in that will + return true even if attempting to read a column will fail, e.g. before + has been called + + + + + Gets the name of the column, given the zero-based column ordinal. + + The zero-based column ordinal. + The name of the specified column. + + + + Gets the number of columns in the current row. + + + + + Consumes all result sets for this reader, leaving the connector ready for sending and processing further + queries + + + + + Releases the resources used by the . + + + + + Releases the resources used by the . + + + + + Closes the reader, allowing a new command to be executed. + + + + + Closes the reader, allowing a new command to be executed. + + + + + Gets the value of the specified column as a Boolean. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a byte. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single character. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 16-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 32-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 64-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a double-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a globally-unique identifier (GUID). + + The zero-based column ordinal. + The value of the specified column. + + + + Populates an array of objects with the column values of the current row. + + An array of Object into which to copy the attribute columns. + The number of instances of in the array. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a TimeSpan, + + + PostgreSQL's interval type has has a resolution of 1 microsecond and ranges from + -178000000 to 178000000 years, while .NET's TimeSpan has a resolution of 100 nanoseconds + and ranges from roughly -29247 to 29247 years. + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + The zero-based column ordinal. + The value of the specified column. + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + Currently only supported in non-sequential mode. + + The zero-based column ordinal. + A data reader. + + + + Reads a stream of bytes from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of bytes read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Reads a stream of characters from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of characters read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Asynchronously gets the value of the specified column as a type. + + The type of the value to be returned. + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Synchronously gets the value of the specified column as a type. + + Synchronously gets the value of the specified column as a type. + The column to be retrieved. + The column to be retrieved. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The name of the column. + The value of the specified column. + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + The zero-based column ordinal. + true if the specified column is equivalent to ; otherwise false. + + + + An asynchronous version of , which gets a value that indicates whether the column contains non-existent or missing values. + The parameter is currently ignored. + + The zero-based column to be retrieved. + + An optional token to cancel the asynchronous operation. The default value is . + + true if the specified column value is equivalent to otherwise false. + + + + Gets the column ordinal given the name of the column. + + The name of the column. + The zero-based column ordinal. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + The zero-based column index. + + + + Gets the data type information for the specified field. + This is the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + The zero-based column index. + + + + Gets the OID for the PostgreSQL type for the specified field, as it appears in the pg_type table. + + + This is a PostgreSQL-internal value that should not be relied upon and should only be used for + debugging purposes. + + The zero-based column index. + + + + Gets the data type of the specified column. + + The zero-based column ordinal. + The data type of the specified column. + + + + Returns an that can be used to iterate through the rows in the data reader. + + An that can be used to iterate through the rows in the data reader. + + + + Returns schema information for the columns in the current resultset. + + + + + + Asynchronously returns schema information for the columns in the current resultset. + + + + + + Returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Asynchronously returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Seeks to the given column. The 4-byte length is read and returned. + + + + + Checks that we have a RowDescription, but not necessary an actual resultset + (for operations which work in SchemaOnly mode. + + + + + Unbinds reader from the connector. + Should be called before the connector is returned to the pool. + + + + + + + + + + + Contains the connection string returned to the user from + after the connection has been opened. Does not contain the password unless Persist Security Info=true. + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + Semaphore to ensure we don't perform type loading and mapping setup concurrently for this data source. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a command ready for use against this . + + An optional SQL for the command. + + + + Creates a batch ready for use against this . + + + + + Creates a new for the given . + + + + + Creates a new for the given . + + + + + Manually sets the password to be used the next time a physical connection is opened. + Consider using instead. + + + + + + + + + + + + + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + Constructs a new , optionally starting out from the given . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + The exception that is thrown when server-related issues occur. + + + PostgreSQL errors (e.g. query SQL issues, constraint violations) are raised via + which is a subclass of this class. + Purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ArgumentException). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class with a specified error message. + + The message that describes the error. + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error or a timeout). + + + + + If the exception was thrown as a result of executing a , references the within + the batch which triggered the exception. Otherwise . + + + + + Initializes a new instance of the class with serialized data. + + The SerializationInfo that holds the serialized object data about the exception being thrown. + The StreamingContext that contains contextual information about the source or destination. + + + + A factory to create instances of various Npgsql objects. + + + + + Gets an instance of the . + This can be used to retrieve strongly typed data objects. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + A service object of type serviceType, or null if there is no service object of type serviceType. + + + + Large object manager. This class can be used to store very large files in a PostgreSQL database. + + + + + The largest chunk size (in bytes) read and write operations will read/write each roundtrip to the network. Default 4 MB. + + + + + Creates an NpgsqlLargeObjectManager for this connection. The connection must be opened to perform remote operations. + + + + + + Execute a function + + + + + Execute a function that returns a byte array + + + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + The oid for the large object created + If an oid is already in use + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + The oid for the large object created + If an oid is already in use + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Deletes a large object on the backend. + + Oid of the object to delete + + + + Deletes a large object on the backend. + + Oid of the object to delete + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + An interface to remotely control the seekable stream for an opened large object on a PostgreSQL server. + Note that the OpenRead/OpenReadWrite method as well as all operations performed on this stream must be wrapped inside a database transaction. + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + How many bytes actually read, or 0 if end of file was already reached. + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + + An optional token to cancel the asynchronous operation. The default value is . + + How many bytes actually read, or 0 if end of file was already reached. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + CanTimeout always returns false. + + + + + CanRead always returns true, unless the stream has been closed. + + + + + CanWrite returns true if the stream was opened with write permissions, and the stream has not been closed. + + + + + CanSeek always returns true, unless the stream has been closed. + + + + + Returns the current position in the stream. Getting the current position does not need a round-trip to the server, however setting the current position does. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Does nothing. + + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases resources at the backend allocated for this stream. + + + + + Releases resources at the backend allocated for this stream, iff disposing is true. + + Whether to release resources allocated at the backend. + + + + Configures Npgsql logging + + + + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to false. + + + + + + Globally initializes Npgsql logging to use the provided . + Must be called before any Npgsql APIs are used. + + + This is a legacy-only, backwards compatibility API. New applications should set the logger factory on + and use the resulting instead. + + + The logging factory to use when logging from Npgsql. + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to . + + + + + An which manages connections for multiple hosts, is aware of their states (primary, secondary, + offline...) and can perform failover and load balancing across them. + + + See . + + + + + Returns a new, unopened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Returns an that wraps this multi-host one with the given server type. + + Specifies the server type (e.g. primary, standby). + + + + Clears the database state (primary, secondary, offline...) for all data sources managed by this multi-host data source. + Can be useful to make Npgsql retry a PostgreSQL instance which was previously detected to be offline. + + + + + Reads a forward-only stream of rows from a nested data source. + Can be retrieved using or + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + + The zero-based column ordinal. + A data reader. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides information on a PostgreSQL notification. Notifications are sent when your connection has registered for + notifications on a specific channel via the LISTEN command. NOTIFY can be used to generate such notifications, + allowing for an inter-connection communication channel. + + + + + Process ID of the PostgreSQL backend that sent this notification. + + + + + The channel on which the notification was sent. + + + + + An optional payload string that was sent with this notification. + + + + + Thrown when trying to use a connection that is already busy performing some other operation. + Provides information on the already-executing operation to help with debugging. + + + + + Creates a new instance of . + + + A command which was in progress when the operation which triggered this exception was executed. + + + + + If the connection is busy with another command, this will contain a reference to that command. + Otherwise, if the connection if busy with another type of operation (e.g. COPY), contains + . + + + + + This class represents a parameter to a command that will be sent to server + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the parameter name and a value. + + The name of the parameter to map. + The value of the . + +

+ When you specify an in the value parameter, the is + inferred from the CLR type. +

+

+ When using this constructor, you must be aware of a possible misuse of the constructor which takes a + parameter. This happens when calling this constructor passing an int 0 and the compiler thinks you are passing a value of + . Use for example to have compiler calling the correct constructor. +

+
+
+ + + Initializes a new instance of the class with the parameter name and the data type. + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Gets or sets The name of the . + + The name of the . + The default is an empty string. + + + + + + + Gets or sets the value of the parameter. + + + An that is the value of the parameter. + The default value is . + + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Used to specify which PostgreSQL type will be sent to the database for this parameter. + + + + + + + + + + + Gets or sets the maximum number of digits used to represent the property. + + + The maximum number of digits used to represent the property. + The default value is 0, which indicates that the data provider sets the precision for . + + + + Gets or sets the number of decimal places to which is resolved. + + The number of decimal places to which is resolved. The default is 0. + + + + + + + + + + + + + + + + The collection to which this parameter belongs, if any. + + + + + The PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This property is automatically set if parameters have been derived via + and can be used to + acquire additional information about the parameters' data type. + + + + Attempt to resolve a type info based on available (postgres) type information on the parameter. + + + Bind the current value to the type info, truncate (if applicable), take its size, and do any final validation before writing. + + + + + + + Creates a new that is a copy of the current instance. + + A new that is a copy of this instance. + + + + Represents a collection of parameters relevant to a as well as their respective mappings to columns in + a . + + + + + Initializes a new instance of the NpgsqlParameterCollection class. + + + + + Gets the with the specified name. + + The name of the to retrieve. + + The with the specified name, or a reference if the parameter is not found. + + + + + Gets the at the specified index. + + The zero-based index of the to retrieve. + The at the specified index. + + + + Adds the specified object to the . + + The to add to the collection. + The index of the new object. + + + + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name, + data type and value. + + The name of the . + One of the NpgsqlDbType values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The name of the source column. + The parameter that was added. + + + + Adds a to the given the specified value. + + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified data type and value. + + One of the values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the parameter name and the data type. + + The name of the parameter. + One of the values. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, + and the column length. + + The name of the parameter. + One of the values. + The length of the column. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, the + column length, and the source column name. + + The name of the parameter. + One of the values. + The length of the column. + The name of the source column. + The index of the new object. + + + + + + + + + + + + + + + + Removes the specified from the collection using a specific index. + + The zero-based index of the parameter. + + + + + + + Removes the specified from the collection. + + The name of the to remove from the collection. + + + + Removes the specified from the collection. + + The to remove from the collection. + + + + + + + Gets a value indicating whether a with the specified parameter name exists in the collection. + + The name of the object to find. + + A reference to the requested parameter is returned in this out param if it is found in the list. + This value is if the parameter is not found. + + + if the collection contains the parameter and param will contain the parameter; + otherwise, . + + + + + Removes all items from the collection. + + + + + + + + + + + + + + + + + Gets the number of objects in the collection. + + The number of objects in the collection. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Report the offset within the collection of the given parameter. + + Parameter to find. + Index of the parameter, or -1 if the parameter is not present. + + + + Insert the specified parameter into the collection. + + Index of the existing parameter before which to insert the new one. + Parameter to insert. + + + + Report whether the specified parameter is present in the collection. + + Parameter to find. + True if the parameter was found, otherwise false. + + + + Remove the specified parameter from the collection. + + Parameter to remove. + True if the parameter was found and removed, otherwise false. + + + + Convert collection to a System.Array. + + Destination array. + Starting index in destination array. + + + + Convert collection to a System.Array. + + NpgsqlParameter[] + + + + The parameter collection includes no parameters. + + + + + The parameter collection includes only named parameters. + + + + + The parameter collection includes only positional parameters. + + + + + The parameter collection includes both named and positional parameters. + This is only supported when is set to . + + + + + A generic version of which provides more type safety and + avoids boxing of value types. Use instead of . + + The type of the value that will be stored in the parameter. + + + + Gets or sets the strongly-typed value of the parameter. + + + + + Gets or sets the value of the parameter. This delegates to . + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a parameter name and value. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Provides an API for a raw binary COPY operation, a high-performance data import/export mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The copy binary format header signature + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Writer for a text import, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Reader for a text export, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing export. + + + + + Asynchronously cancels and terminates an ongoing export. + + + + + Provides the underlying mechanism for reading schema information. + + + + + Returns the MetaDataCollections that lists all possible collections. + + The MetaDataCollections + + + + Returns the Restrictions that contains the meaning and position of the values in the restrictions array. + + The Restrictions + + + + Populates some generic type information that is common for base types, arrays, enums, etc. Some will + be overridden later. + + + + + Sets some custom, hardcoded info on a DataType row that cannot be loaded/inferred from PostgreSQL + + + + + List of keywords taken from PostgreSQL 9.0 reserved words documentation. + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + On this builder, various features are disabled by default; unless you're looking to save on code size (e.g. when publishing with + NativeAOT), use instead. + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + Constructs a new , optionally starting out from the given + . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + The same builder instance so that multiple calls can be chained. + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + The same builder instance so that multiple calls can be chained. + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sets up mappings for the PostgreSQL array types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL range types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL record type as a .NET object[]. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL tsquery and tsvector types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL ltree extension types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for extra conversions from PostgreSQL to .NET types. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use TLS/SSl encryption for connections to PostgreSQL. This does not guarantee that encryption will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use GSS/SSPI authentication for connections to PostgreSQL. This does not guarantee that it will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + Options to configure Npgsql's support for OpenTelemetry tracing. + Currently no options are available. + + + + + Represents a transaction to be made in a PostgreSQL database. This class cannot be inherited. + + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + If true, the transaction has been committed/rolled back, but not disposed. + + + + + Specifies the isolation level for this transaction. + + The isolation level for this transaction. The default is . + + + + Commits the database transaction. + + + + + Commits the database transaction. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Rolls back a transaction from a pending state. + + + + + Rolls back a transaction from a pending state. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Creates a transaction save point. + + The name of the savepoint. + + This method does not cause a database roundtrip to be made. The savepoint creation statement will instead be sent along with + the next command. + + + + + Creates a transaction save point. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + This method does not cause a database roundtrip to be made, and will therefore always complete synchronously. + The savepoint creation statement will instead be sent along with the next command. + + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Indicates whether this transaction supports database savepoints. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, without rolling back. Used only in special circumstances, e.g. when + the connection is broken. + + + + + Unbinds transaction from the connector. + Should be called before the connector is returned to the pool. + + + + + Represents a .pgpass file, which contains passwords for noninteractive connections + + + + + File name being parsed for credentials + + + + + Initializes a new instance of the class + + + + + + Parses file content and gets all credentials from the file + + corresponding to all lines in the .pgpass file + + + + Searches queries loaded from .PGPASS file to find first entry matching the provided parameters. + + Hostname to query. Use null to match any. + Port to query. Use null to match any. + Database to query. Use null to match any. + User name to query. Use null to match any. + Matching if match was found. Otherwise, returns null. + + + + Represents a hostname, port, database, username, and password combination that has been retrieved from a .pgpass file + + + + + Hostname parsed from the .pgpass file + + + + + Port parsed from the .pgpass file + + + + + Database parsed from the .pgpass file + + + + + User name parsed from the .pgpass file + + + + + Password parsed from the .pgpass file + + + + + This class represents an entry from the .pgpass file + + Hostname parsed from the .pgpass file + Port parsed from the .pgpass file + Database parsed from the .pgpass file + User name parsed from the .pgpass file + Password parsed from the .pgpass file + + + + Creates new based on string in the format hostname:port:database:username:password. The : and \ characters should be escaped with a \. + + string for the entry from the pgpass file + New instance of for the string + Entry is not formatted as hostname:port:database:username:password or non-wildcard port is not a number + + + + Checks whether this matches the parameters supplied + + Hostname to check against this entry + Port to check against this entry + Database to check against this entry + Username to check against this entry + True if the entry is a match. False otherwise. + + + + Checks if 2 strings are a match for a considering that either value can be a wildcard (*) + + Value being searched + Value from the PGPASS entry + True if the values are a match. False otherwise. + + + + Tracks all connectors currently managed by this pool, whether idle or busy. + Only updated rarely - when physical connections are opened/closed - but is read in perf-sensitive contexts. + + + + + Reader side for the idle connector channel. Contains nulls in order to release waiting attempts after + a connector has been physically closed/broken. + + + + + Incremented every time this pool is cleared via or + . Allows us to identify connections which were + created before the clear. + + + + + Provides lookup for a pool based on a connection string. + + + Note that pools created directly as are referenced directly by users, and aren't managed here. + + + + + Resets the pool manager to its initial state, for test purposes only. + Assumes that no other threads are accessing the pool. + + + + + The default implementation of , for standard PostgreSQL databases.. + + + + + + + + The default implementation of NpgsqlDatabase, for standard PostgreSQL databases. + + + + + The PostgreSQL types detected in the database. + + + + + + + + The PostgreSQL version string as returned by the version() function. Populated during loading. + + + + + True if the backend is Amazon Redshift; otherwise, false. + + + + + + + + True if the 'pg_enum' table includes the 'enumsortorder' column; otherwise, false. + + + + + True if the 'pg_type' table includes the 'typcategory' column; otherwise, false. + + + pg_type.typcategory is added after 8.4. + see: https://www.postgresql.org/docs/8.4/static/catalog-pg-type.html#CATALOG-TYPCATEGORY-TABLE + + + + + Loads database information from the PostgreSQL database specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A task representing the asynchronous operation. + + + + + Generates a raw SQL query string to select type information. + + + Select all types (base, array which is also base, enum, range, composite). + Note that arrays are distinguished from primitive types through them having typreceive=array_recv. + Order by primitives first, container later. + For arrays and ranges, join in the element OID and type (to filter out arrays of unhandled + types). + + + + + Loads type information from the backend specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A collection of types loaded from the backend. + + + Unknown typtype for type '{internalName}' in pg_type: {typeChar}. + + + + Provides constants for PostgreSQL error codes. + + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The exception that is thrown when the PostgreSQL backend reports errors (e.g. query + SQL issues, constraint violations). + + + This exception only corresponds to a PostgreSQL-delivered error. + Other errors (e.g. network issues) will be raised via , + and purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ). + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html, + https://www.postgresql.org/docs/current/static/protocol-error-fields.html + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Populates a with the data needed to serialize the target object. + + The to populate with data. + The destination (see ) for this serialization. + + + + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error). Check . + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + Constants are defined in . + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + + https://www.postgresql.org/docs/current/static/protocol-flow.html#PROTOCOL-ASYNC + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Provides data for a PostgreSQL notice event. + + + + + The Notice that was sent from the database. + + + + + Represents a PostgreSQL array data type, which can hold several multiple values in a single column. + + + See https://www.postgresql.org/docs/current/static/arrays.html. + + + + + The PostgreSQL data type of the element contained within this array. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + + + + Represents a PostgreSQL base data type, which is a simple scalar value. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + + + + Represents a PostgreSQL composite data type, which can hold multiple fields of varying types in a single column. + + + See https://www.postgresql.org/docs/current/static/rowtypes.html. + + + + + Holds the name and types for all fields. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a field in a PostgreSQL composite data type. + + + + + The name of the composite field. + + + + + The type of the composite field. + + + + + + + + Represents a PostgreSQL domain type. + + + See https://www.postgresql.org/docs/current/static/sql-createdomain.html. + + When PostgreSQL returns a RowDescription for a domain type, the type OID is the base type's + (so fetching a domain type over text returns a RowDescription for text). + However, when a composite type is returned, the type OID there is that of the domain, + so we provide "clean" support for domain types. + + + + + The PostgreSQL data type of the base type, i.e. the type this domain is based on. + + + + + True if the domain has a NOT NULL constraint, otherwise false. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a PostgreSQL enum data type. + + + See https://www.postgresql.org/docs/current/static/datatype-enum.html. + + + + + The enum's fields. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Represents a PostgreSQL multirange data type. + + +

See https://www.postgresql.org/docs/current/static/rangetypes.html.

+

Multirange types were introduced in PostgreSQL 14.

+
+
+ + + The PostgreSQL data type of the range of this multirange. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Represents a PostgreSQL range data type. + + + See https://www.postgresql.org/docs/current/static/rangetypes.html. + + + + + The PostgreSQL data type of the subtype of this range. + + + + + The PostgreSQL data type of the multirange of this range. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Represents a PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This class is abstract, see derived classes for concrete types of PostgreSQL types. + + + Instances of this class are shared between connections to the same databases. + For more info about what this class and its subclasses represent, see + https://www.postgresql.org/docs/current/static/catalog-pg-type.html. + + + + + Constructs a representation of a PostgreSQL data type. + + The data type's namespace (or schema). + The data type's name. + The data type's OID. + + + + Constructs a representation of a PostgreSQL data type. + + The data type's fully qualified name. + The data type's OID. + + + + The data type's OID - a unique id identifying the data type in a given database (in pg_type). + + + + + The data type's namespace (or schema). + + + + + The data type's name. + + + Note that this is the standard, user-displayable type name (e.g. integer[]) rather than the internal + PostgreSQL name as it is in pg_type (_int4). See for the latter. + + + + + The full name of the backend type, including its namespace. + + + + + A display name for this backend type, including the namespace unless it is pg_catalog (the namespace + for all built-in types). + + + + + The data type's internal PostgreSQL name (e.g. _int4 not integer[]). + See for a more user-friendly name. + + + + + If a PostgreSQL array type exists for this type, it will be referenced here. + Otherwise null. + + + + + If a PostgreSQL range type exists for this type, it will be referenced here. + Otherwise null. + + + + + Generates the type name including any facts (size, precision, scale), given the PostgreSQL type modifier. + + + + + Returns a string that represents the current object. + + + + Canonizes (nested) domain types to underlying types, does not handle composites. + + + A base type. + + + An enum carrying its variants. + + + A pseudo type like anyarray. + + + + Represents a PostgreSQL data type that isn't known to Npgsql and cannot be handled. + + + + + Constructs a the unknown backend type. + + + + + Internally represents a statement has been prepared, is in the process of being prepared, or is a + candidate for preparation (i.e. awaiting further usages). + + + + + If true, the user explicitly requested this statement be prepared. It does not get closed as part of + the automatic preparation LRU mechanism. + + + + + If this statement is about to be prepared, but replaces a previous statement which needs to be closed, + this holds the name of the previous statement. Otherwise null. + + + + + Contains the handler types for a prepared statement's parameters, for overloaded cases (same SQL, different param types) + Only populated after the statement has been prepared (i.e. null for candidates). + + + + + The state of a . + + + + + The statement hasn't been prepared yet, nor is it in the process of being prepared. + This is the value for autoprepare candidates which haven't been prepared yet, and is also + a temporary state during preparation. + + + + + The statement is in the process of being prepared. + + + + + The statement has been fully prepared and can be executed. + + + + + The statement is in the process of being unprepared. This is a temporary state that only occurs during + unprepare. Specifically, it means that a Close message for the statement has already been written + to the write buffer. + + + + + The statement has been unprepared and is no longer usable. + + + + + The statement was invalidated because e.g. table schema has changed since preparation. + + + + + Total number of current prepared statements (whether explicit or automatic). + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + Creates a new replication slot and returns information about the newly-created slot. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + The name of the output plugin used for logical decoding (see + + https://www.postgresql.org/docs/current/logicaldecoding-output-plugin.html). + + if this replication slot shall be temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + A to specify what to do with the + snapshot created during logical slot initialization. , which is + also the default, will export the snapshot for use in other sessions. This option can't be used inside a + transaction. will use the snapshot for the current transaction + executing the command. This option must be used in a transaction, and + must be the first command run in that transaction. Finally, will + just use the snapshot for logical decoding as normal but won't do anything else with it. + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a class that + can be used to initialize instances of subclasses. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + or at the slot's consistent point if isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + The collection of options passed to the slot's logical decoding plugin. + + Whether the plugin will be bypassing and reading directly from the buffer. + + A representing an that + can be used to stream WAL entries in form of instances. + + + + Contains information about a newly-created logical replication slot. + + + + + Creates a new logical replication slot + + The logical decoding output plugin to the corresponding replication slot was created for. + A struct with information to create the replication slot. + + + + The identifier of the snapshot exported by the command. + The snapshot is valid until a new command is executed on this connection or the replication connection is closed. + + + + + The name of the output plugin used by the newly-created logical replication slot. + + + + + The WAL location at which the slot became consistent. + This is the earliest location from which streaming can start on this replication slot. + + + + + Represents a logical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Decides what to do with the snapshot created during logical slot initialization. + + + + + Export the snapshot for use in other sessions. This is the default. + This option can't be used inside a transaction. + + + + + Use the snapshot for the current transaction executing the command. + This option must be used in a transaction, and CREATE_REPLICATION_SLOT must be the first command run + in that transaction. + + + + + Just use the snapshot for logical decoding as normal but don't do anything else with it. + + + + + Logical Replication Protocol begin message + + + + + The final LSN of the transaction. + + + + + Commit timestamp of the transaction. + The value is in number of microseconds since PostgreSQL epoch (2000-01-01). + + + + + Logical Replication Protocol begin prepare message + + + + + Logical Replication Protocol commit message + + + + + Flags; currently unused. + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit. + + + + + No flags. + + + + + Logical Replication Protocol commit prepared message + + + + + Flags for the commit prepared; currently unused. + + + + + The LSN of the commit prepared. + + + + + The end LSN of the commit prepared transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to DEFAULT. + + + + + Columns representing the new row. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY REPLICA IDENTITY set to FULL. + + + + + Columns representing the deleted row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to FULL. + + + + + Columns representing the old row. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to USING INDEX. + + + + + Columns representing the key. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol insert message + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY set to DEFAULT or USING INDEX. + + + + + Columns representing the key. + + + + + Logical Replication Protocol logical decoding message + + + + + Flags; Either 0 for no flags or 1 if the logical decoding message is transactional. + + + + + The LSN of the logical decoding message. + + + + + The prefix of the logical decoding message. + + + + + The content of the logical decoding message. + + + + + Logical Replication Protocol origin message + + + + + The LSN of the commit on the origin server. + + + + + Name of the origin. + + + + + The base class of all Logical Replication Protocol Messages + + + See https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html for details about the + protocol. + + + + + + + + Abstract base class for Logical Replication Protocol prepare and begin prepare message + + + + + The user defined GID of the two-phase transaction. + + + + + Logical Replication Protocol prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Abstract base class for the logical replication protocol begin prepare and prepare message + + + + + The LSN of the prepare. + + + + + The end LSN of the prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Logical Replication Protocol relation message + + + + + ID of the relation. + + + + + Namespace (empty string for pg_catalog). + + + + + Relation name. + + + + + Replica identity setting for the relation (same as relreplident in pg_class): + columns used to form “replica identity” for rows. + + + + + Relation columns + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Flags for the column. + + + + + No flags. + + + + + Marks the column as part of the key. + + + + + Replica identity setting for the relation (same as relreplident in pg_class). + + + See + + + + + Default (primary key, if any). + + + + + Nothing. + + + + + All columns. + + + + + Index with indisreplident set (same as nothing if the index used has been dropped) + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. Currently can be either 0 for no flags or 1 which marks the column as part of the key. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Logical Replication Protocol rollback prepared message + + + + + Flags for the rollback prepared; currently unused. + + + + + The end LSN of the prepared transaction. + + + + + The end LSN of the rollback prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Rollback timestamp of the transaction. + + + + + Flags for the rollback prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream abort message + + + + + Xid of the subtransaction (will be same as xid of the transaction for top-level transactions). + + + + + Logical Replication Protocol stream commit message + + + + + Flags; currently unused (must be 0). + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Logical Replication Protocol stream prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream start message + + + + + A value of 1 indicates this is the first stream segment for this XID, 0 for any other stream segment. + + + + + Logical Replication Protocol stream stop message + + + + + The common base class for all streaming replication messages that can be part of a streaming transaction (protocol V2) + + + + + Xid of the transaction (only present for streamed transactions). + + + + + The common base class for all replication messages that set the transaction xid of a transaction + + + + + Xid of the transaction. + + + + + Logical Replication Protocol truncate message + + + + + Option flags for TRUNCATE + + + + + The relations being truncated. + + + + + Enum representing the additional options for the TRUNCATE command as flags + + + + + No additional option was specified + + + + + CASCADE was specified + + + + + RESTART IDENTITY was specified + + + + + Logical Replication Protocol type message + + + + + ID of the data type. + + + + + Namespace (empty string for pg_catalog). + + + + + Name of the data type. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Options to be passed to the pgoutput plugin + + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + The version of the Logical Streaming Replication Protocol + + + + + The publication names to stream + + + + + Send values in binary representation + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of in-progress transactions + + + This works as of logical streaming replication protocol version 2 (PostgreSQL 14+) + + + + + Write logical decoding messages into the replication stream + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of prepared transactions + + + This works in PostgreSQL versions 15+ + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot initialized for for the logical streaming replication protocol + (pgoutput logical decoding plugin). + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The representing the existing replication slot + + + + Creates a new instance. + + + This constructor is intended to be consumed by plugins sitting on top of + + + The from which the new instance should be initialized + + + + Represents a streaming tuple containing . + + + + + The number of columns in the tuple. + + + + + + + + Represents a column value in a logical replication session. + + + + + The length of the value in bytes. + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + true if the specified column is equivalent to ; otherwise false. + + + + Gets a value that indicates whether the column contains an unchanged TOASTed value (the actual value is not sent). + + Whether the specified column is an unchanged TOASTed value. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + + + + Gets the data type information for the specified field. + This is be the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + + + + Gets the data type of the specified column. + + The data type of the specified column. + + + + Gets the value of the specified column as a type. + + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Gets the value of the specified column as an instance of . + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Retrieves data as a . + + + + + Retrieves data as a . + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Identifies the data as NULL value. + + + + + Identifies unchanged TOASTed value (the actual value is not sent). + + + + + Identifies the data as text formatted value. + + + + + Identifies the data as binary value. + + Added in PG14 + + + + Extension methods to use with the pg_output logical decoding plugin. + + + + + Creates a class that wraps a replication slot using the + "pgoutput" logical decoding plugin and can be used to start streaming replication via the logical + streaming replication protocol. + + + See https://www.postgresql.org/docs/current/protocol-logical-replication.html + and https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html + for more information. + + The to use for creating the replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start the Logical Streaming Replication Protocol (pgoutput logical decoding plugin), + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The collection of options passed to the slot's logical decoding plugin. + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a physical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Creates a that wraps a PostgreSQL physical replication slot and + can be used to start physical streaming replication + + + The name of the slot to create. Must be a valid replication slot name + (see Section 26.2.6.1). + + + if this replication slot shall be a temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + + + If this is set to this physical replication slot reserves WAL immediately. Otherwise, + WAL is only reserved upon connection from a streaming replication client. + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a that represents the + newly-created replication slot. + + + + + Read some information associated to a replication slot. + + This command is currently only supported for physical replication slots. + + + + The name of the slot to read. Must be a valid replication slot name + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a or + if the replication slot does not exist. + + + + Instructs the server to start streaming the WAL for physical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for physical replication, starting at the WAL location + and timeline id specified in . The server can reply with an error, for example + if the requested section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The must contain a valid to be used for this overload. + + + The token to be used for stopping the replication. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Wraps a replication slot that uses physical replication. + + + + + Creates a new instance. + + + Create a instance with this constructor to wrap an existing PostgreSQL replication slot + that has been initialized for physical replication. + + The name of the existing replication slot + The replication slot's restart_lsn + The timeline ID associated to restart_lsn, following the current timeline history. + + + + The replication slot's restart_lsn. + + + + + The timeline ID associated to restart_lsn, following the current timeline history. + + + + + Defines the core behavior of replication connections and provides the base class for + and + . + + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + + The connection string that includes the server name, the database name, and other parameters needed to establish the initial + connection. The default value is an empty string. + + + Since replication connections are a special kind of connection, + , , + and + are always disabled no matter what you set them to in your connection string. + + + + + The location of the last WAL byte + 1 received in the standby. + + + + + The location of the last WAL byte + 1 flushed to disk in the standby. + + + + + The location of the last WAL byte + 1 applied (e. g. written to disk) in the standby. + + + + + Send replies at least this often. + Timeout. disables automated replies. + + + + + Time that receiver waits for communication from master. + Timeout. disables the timeout. + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Gets or sets the wait time before terminating the attempt to execute a command and generating an error. + + The time to wait for the command to execute. The default value is 30 seconds. + + + + The client encoding for the connection + This can only be called when there is an active connection. + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Opens a database replication connection with the property settings specified by the + . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous open operation. + + + + Closes the replication connection and performs tasks associated + with freeing, releasing, or resetting its unmanaged resources asynchronously. + + A task that represents the asynchronous dispose operation. + + + + Requests the server to identify itself. + + + An optional token to cancel the asynchronous operation. The default value is . + + + A containing information about the system we are connected to. + + + + + Requests the server to send the current setting of a run-time parameter. + This is similar to the SQL command SHOW. + + The name of a run-time parameter. + Available parameters are documented in https://www.postgresql.org/docs/current/runtime-config.html. + + + An optional token to cancel the asynchronous operation. The default value is . + + The current setting of the run-time parameter specified in as . + + + + Requests the server to send over the timeline history file for timeline tli. + + The timeline for which the history file should be sent. + + An optional token to cancel the asynchronous operation. The default value is . + + The timeline history file for timeline tli + + + + Sets the current status of the replication as it is interpreted by the consuming client. The value supplied + in will be sent to the server via and + with the next status update. + + A status update which will happen upon server request, upon expiration of + our upon an enforced status update via , whichever happens first. + If you want the value you set here to be pushed to the server immediately (e. g. in synchronous replication scenarios), + call after calling this method. + + + + This is a convenience method setting both and in one operation. + You can use it if your application processes replication messages in a way that doesn't care about the difference between + writing a message and flushing it to a permanent storage medium. + + The location of the last WAL byte + 1 applied (e. g. processed or written to disk) and flushed to disk in the standby. + + + + Sends a forced status update to PostgreSQL with the current WAL tracking information. + + The connection currently isn't streaming + A Task representing the sending of the status update (and not any PostgreSQL response). + + + + Drops a replication slot, freeing any reserved server-side resources. + If the slot is a logical slot that was created in a database other than + the database the walsender is connected to, this command fails. + + The name of the slot to drop. + + causes the command to wait until the slot becomes + inactive if it currently is active instead of the default behavior of raising an error. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous drop operation. + + + + The common base class for all streaming replication messages + + + + + The starting point of the WAL data in this message. + + + + + The current end of WAL on the server. + + + + + The server's system clock at the time this message was transmitted, as microseconds since midnight on 2000-01-01. + + + Since the client using Npgsql and the server may be located in different time zones, + as of Npgsql 7.0 this value is no longer converted to local time but keeps its original value in UTC. + You can check if you don't want to introduce behavior depending on Npgsql versions. + + + + + Contains information about a newly-created replication slot. + + + + + The name of the newly-created replication slot. + + + + + Contains information about a replication slot. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + The name of the replication slot. + + + + + The WAL location at which the slot became consistent. + + + + + The identifier of the snapshot exported by the CREATE_REPLICATION_SLOT command. + + + + + Contains server identification information returned from . + + + + + The unique system identifier identifying the cluster. + This can be used to check that the base backup used to initialize the standby came from the same cluster. + + + + + Current timeline ID. Also useful to check that the standby is consistent with the master. + + + + + Current WAL flush location. Useful to get a known location in the write-ahead log where streaming can start. + + + + + Database connected to. + + + + + Text representations of PostgreSQL WAL operations decoded by the "test_decoding" plugin. See + https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Decoded text representation of the operation performed in this WAL entry + + + + + + + + Returns a clone of this message, which can be accessed after other replication messages have been retrieved. + + + + + Options to be passed to the test_decoding plugin + + + + + Creates a new instance of . + + Include the transaction number for BEGIN and COMMIT command output + Include the timestamp for COMMIT command output + Set the output mode to binary + Skip output for transactions that didn't change the database + Only output data that don't have the replication origin set + Include output from table rewrites that were caused by DDL statements + Enable streaming output + + + + Include the transaction number for BEGIN and COMMIT command output + + + + + Include the timestamp for COMMIT command output + + + + + Set the output mode to binary + + + + + Skip output for transactions that didn't change the database + + + + + Only output data that don't have the replication origin set + + + + + Include output from table rewrites that were caused by DDL statements + + + + + Enable streaming output + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot + initialized for for the test_decoding logical decoding plugin. + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The representing the existing replication slot + + + + Extension methods to use with the + test_decoding logical decoding plugin. + See https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Creates a class that wraps a replication slot using the + test_decoding logical decoding plugin. + + + See https://www.postgresql.org/docs/current/test-decoding.html + for more information. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start streaming the WAL for logical replication using the test_decoding logical decoding plugin, + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The collection of options passed to the slot's logical decoding plugin. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a PostgreSQL timeline history file + + + + + File name of the timeline history file, e.g., 00000002.history. + + + + + Contents of the timeline history file. + + + + + A message representing a section of the WAL data stream. + + + + + A section of the WAL data stream that is raw WAL data in physical replication or decoded with the selected + logical decoding plugin in logical replication. It is only valid until the next + is requested from the stream. + + + A single WAL record is never split across two XLogData messages. + When a WAL record crosses a WAL page boundary, and is therefore already split using continuation records, + it can be split at the page boundary. In other words, the first main WAL record and its continuation + records can be sent in different XLogData messages. + + + + + Stripped-down version of , mainly to support Amazon Redshift. + + + + + Performs some post-setup configuration that's common to both table columns and non-columns. + + + + + Provides schema information about a column. + + + Note that this can correspond to a field returned in a query which isn't an actual table column + + See https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldatareader.getschematable(v=vs.110).aspx + for information on the meaning of the different fields. + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The describing the type of this column. + + + + + The OID of the type of this column in the PostgreSQL pg_type catalog table. + + + + + The OID of the PostgreSQL table of this column. + + + + + The column's position within its table. Note that this is different from , + which is the column's position within the resultset. + + + + + The default SQL expression for this column. + + + + + The value for this column's type. + + + + + + + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + + Specifies server type preference. + + + + + Any successful connection is acceptable. + + + + + Session must accept read-write transactions by default (that is, the server must not be in hot standby mode and the + default_transaction_read_only parameter must be off). + + + + + Session must not accept read-write transactions by default (the converse). + + + + + Server must not be in hot standby mode. + + + + + Server must be in hot standby mode. + + + + + First try to find a primary server, but if none of the listed hosts is a primary server, try again in mode. + + + + + First try to find a standby server, but if none of the listed hosts is a standby server, try again in mode. + + + + + Utility class to execute a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it and at the same time prevent event if the original fails later. + + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The result . + The representing the asynchronous wait. + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The representing the asynchronous wait. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A type mapper, managing how to read and write CLR values to PostgreSQL data types. + + + The preferred way to manage type mappings is on . An alternative, but discouraged, method, is to + manage them globally via ). + + + + + The default name translator to convert CLR type names and member names. Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET enum type to be mapped + + + + Removes an existing enum mapping. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing enum mapping. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR type to a PostgreSQL composite type. + + + CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your members to manually specify a PostgreSQL name. + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET type to be mapped + + + + Removes an existing composite mapping. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to + + + + + Maps a CLR type to a composite type. + + + Maps CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + The .NET type to be mapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing composite mapping. + + The .NET type to be unmapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Adds a type info resolver factory which can add or modify support for PostgreSQL types. + Typically used by plugins. + + The type resolver factory to be added. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Resets all mapping changes performed on this type mapper and reverts it to its original, starting state. + + + + + The base class for user type mappings. + + + + + The name of the PostgreSQL type that this mapping is for. + + + + + The CLR type that this mapping is for. + + + + + Represents a timeout that will expire at some point. + + + + + A wrapper around to simplify reset management. + + + Since there's no way to reset a once it was cancelled, + we need to make sure that an existing cancellation token source hasn't been cancelled, + every time we start it (see https://github.com/dotnet/runtime/issues/4694). + + + + + Used, so we wouldn't concurently use the cts for the cancellation, while it's being disposed + + + + + Set the timeout on the wrapped + and make sure that it hasn't been cancelled yet + + + An optional token to cancel the asynchronous operation. The default value is . + + The from the wrapped + + + + Restart the timeout on the wrapped without reinitializing it, + even if is already set to + + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + The from the wrapped + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + + + + Set the timeout on the wrapped + to + + + can still arrive at a state + where it's value is if the + passed to gets a cancellation request. + If this is the case it will be resolved upon the next call to + or . Calling multiple times or without calling + first will do no any harm (besides eating a tiny amount of CPU cycles). + + + + + Cancel the wrapped + + + + + Cancel the wrapped after delay + + + + + The from the wrapped + . + + + The token is only valid after calling + and before calling the next time. + Otherwise you may end up with a token that has already been + cancelled or belongs to a cancellation token source that has + been disposed. + + + + + Allocation free helper function to find if version is greater than expected + + + + + + + + Note that a connection may be closed before its TransactionScope completes. In this case we close the NpgsqlConnection + as usual but the connector in a special list in the pool; it will be closed only when the scope completes. + + + + + Represents a PostgreSQL data type that can be written or read to the database. + Used in places such as to unambiguously specify + how to encode or decode values. + + + See https://www.postgresql.org/docs/current/static/datatype.html. + + + + + Corresponds to the PostgreSQL 8-byte "bigint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 8-byte floating-point "double" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 4-byte "integer" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL arbitrary-precision "numeric" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL floating-point "real" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 2-byte "smallint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL "money" type. + + See https://www.postgresql.org/docs/current/static/datatype-money.html + + + + Corresponds to the PostgreSQL "boolean" type. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL geometric "box" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "circle" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "line" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "lseg" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "path" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "point" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "polygon" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL "char(n)" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "text" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "varchar" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL internal "name" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "citext" type for the citext module. + + See https://www.postgresql.org/docs/current/static/citext.html + + + + Corresponds to the PostgreSQL "char" type. + + + This is an internal field and should normally not be used for regular applications. + + See https://www.postgresql.org/docs/current/static/datatype-text.html + + + + + Corresponds to the PostgreSQL "bytea" type, holding a raw byte string. + + See https://www.postgresql.org/docs/current/static/datatype-binary.html + + + + Corresponds to the PostgreSQL "date" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "interval" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the obsolete PostgreSQL "abstime" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "inet" type. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "cidr" type, a field storing an IPv4 or IPv6 network. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr" type, a field storing a 6-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr8" type, a field storing a 6-byte or 8-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "bit" type. + + See https://www.postgresql.org/docs/current/static/datatype-bit.html + + + + Corresponds to the PostgreSQL "varbit" type, a field storing a variable-length string of bits. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL "tsvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "tsquery" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "regconfig" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "uuid" type. + + See https://www.postgresql.org/docs/current/static/datatype-uuid.html + + + + Corresponds to the PostgreSQL "xml" type. + + See https://www.postgresql.org/docs/current/static/datatype-xml.html + + + + Corresponds to the PostgreSQL "json" type, a field storing JSON in text format. + + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonb" type, a field storing JSON in an optimized binary. + format. + + + Supported since PostgreSQL 9.4. + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonpath" type, a field storing JSON path in text format. + format. + + + Supported since PostgreSQL 12. + See https://www.postgresql.org/docs/current/datatype-json.html#DATATYPE-JSONPATH + + + + + Corresponds to the PostgreSQL "hstore" type, a dictionary of string key-value pairs. + + See https://www.postgresql.org/docs/current/static/hstore.html + + + + Corresponds to the PostgreSQL "refcursor" type. + + + + + Corresponds to the PostgreSQL internal "oidvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL internal "int2vector" type. + + + + + Corresponds to the PostgreSQL "oid" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid8" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "cid" type, an internal command identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "regtype" type, a numeric (OID) ID of a type in the pg_type table. + + + + + Corresponds to the PostgreSQL "tid" type, a tuple id identifying the physical location of a row within its table. + + + + + Corresponds to the PostgreSQL "pg_lsn" type, which can be used to store LSN (Log Sequence Number) data which + is a pointer to a location in the WAL. + + + See: https://www.postgresql.org/docs/current/datatype-pg-lsn.html and + https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=7d03a83f4d0736ba869fa6f93973f7623a27038a + + + + + A special value that can be used to send parameter values to the database without + specifying their type, allowing the database to cast them to another value based on context. + The value will be converted to a string and send as text. + + + This value shouldn't ordinarily be used, and makes sense only when sending a data type + unsupported by Npgsql. + + + + + The geometry type for PostgreSQL spatial extension PostGIS. + + + + + The geography (geodetic) type for PostgreSQL spatial extension PostGIS. + + + + + The PostgreSQL ltree type, each value is a label path "a.label.tree.value", forming a tree in a set. + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL lquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL ltxtquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + Corresponds to the PostgreSQL "int4range" type. + + + + + Corresponds to the PostgreSQL "int8range" type. + + + + + Corresponds to the PostgreSQL "numrange" type. + + + + + Corresponds to the PostgreSQL "tsrange" type. + + + + + Corresponds to the PostgreSQL "tstzrange" type. + + + + + Corresponds to the PostgreSQL "daterange" type. + + + + + Corresponds to the PostgreSQL "int4multirange" type. + + + + + Corresponds to the PostgreSQL "int8multirange" type. + + + + + Corresponds to the PostgreSQL "nummultirange" type. + + + + + Corresponds to the PostgreSQL "tsmultirange" type. + + + + + Corresponds to the PostgreSQL "tstzmultirange" type. + + + + + Corresponds to the PostgreSQL "datemultirange" type. + + + + + Corresponds to the PostgreSQL "array" type, a variable-length multidimensional array of + another type. This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Array | NpgsqlDbType.Integer) + + See https://www.postgresql.org/docs/current/static/arrays.html + + + + Corresponds to the PostgreSQL "range" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Range | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 9.2. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Corresponds to the PostgreSQL "multirange" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Multirange | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 14. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + Can return null when a custom range type is used. + + + Can return null when a plugin type or custom range type is used. + + + Should not be used with display names, first normalize it instead. + + + + A raw representation of the PostgreSQL interval datatype. Use only when or NodaTime + Period do not have sufficient range to handle your values. + + +

+ See https://www.postgresql.org/docs/current/static/datatype-geometric.html. +

+

+ Do not use this type unless you have to: prefer or NodaTime + Period when possible. +

+
+
+ + + Constructs an . + + + + + Months and years, after time for alignment. + + + + + Days, after time for alignment. + + + + + Remaining time unit smaller than a day, in microseconds. + + + + + + + + + + + + + + Wraps a PostgreSQL Write-Ahead Log Sequence Number (see: https://www.postgresql.org/docs/current/datatype-pg-lsn.html) + + + Log Sequence Numbers are a fundamental concept of the PostgreSQL Write-Ahead Log and by that of + PostgreSQL replication. See https://www.postgresql.org/docs/current/wal-internals.html for what they represent. + + This struct provides conversions from/to and and beyond that tries to port + the methods and operators in https://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/utils/adt/pg_lsn.c + but nothing more. + + + + + Zero is used indicate an invalid Log Sequence Number. No XLOG record can begin at zero. + + + + + Initializes a new instance of . + + The value to wrap. + + + + Returns a value indicating whether this instance is equal to a specified + instance. + + A instance to compare to this instance. + if the current instance is equal to the value parameter; + otherwise, . + + + + Compares this instance to a specified and returns an indication of their + relative values. + + A instance to compare to this instance. + A signed number indicating the relative values of this instance and . + + + + Returns a value indicating whether this instance is equal to a specified object. + + An object to compare to this instance + if the current instance is equal to the value parameter; + otherwise, . + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Converts the numeric value of this instance to its equivalent string representation. + + The string representation of the value of this instance, consisting of two hexadecimal numbers of + up to 8 digits each, separated by a slash + + + + Converts the string representation of a Log Sequence Number to a instance. + + A string that represents the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + The parameter is . + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Converts the span representation of a Log Sequence Number to a instance. + + A span containing the characters that represent the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Tries to convert the string representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A string that represents the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is or , is not in the right format, or represents a number + less than or greater than . This parameter is + passed uninitialized; any value originally supplied in result will be overwritten. + + + if c> was converted successfully; otherwise, . + + + + + Tries to convert the span representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A span containing the characters that represent the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is empty, is not in the right format, or represents a number less than + or greater than . This parameter is passed + uninitialized; any value originally supplied in result will be overwritten. + + + if was converted successfully; otherwise, . + + + + Converts the value of a 64-bit unsigned integer to a instance. + + A 64-bit unsigned integer. + A new instance of initialized to . + + + + Converts the value of a instance to a 64-bit unsigned integer value. + + A instance + The contents of as 64-bit unsigned integer. + + + + Returns a value that indicates whether two specified instances of are equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if equals ; otherwise, . + + + + + Returns a value that indicates whether two specified instances of are not + equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if does not equal ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than + another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is less than + another specified instance. + + The first value to compare. + The second value to compare. + + if is less than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than or equal to ; + otherwise, . + + + + + Returns the larger of two values. + + The first value to compare. + The second value to compare. + + The larger of the two values. + + + + + Returns the smaller of two values. + + The first value to compare. + The second value to compare. + + The smaller of the two values. + + + + + Returns a value indicating whether a specified instance is less than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is less than or equal to ; + otherwise, . + + + + + Subtracts two specified values. + + The first value. + The second value. + The number of bytes separating those write-ahead log locations. + + + + Subtract the number of bytes from a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to subtract. + A new instance. + + The resulting instance would represent a number less than + . + + + + + Add the number of bytes to a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to add. + A new instance. + + The resulting instance would represent a number greater than + . + + + + + Represents a PostgreSQL range type. + + The element type of the values in the range. + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Defined by PostgreSQL to represent an empty range. + + + + + Defined by PostgreSQL to represent an infinite lower bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an infinite upper bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an null bound. + Some element types may have specific handling for this value distinct from an infinite or missing value. + + + + + Defined by PostgreSQL to represent a lower inclusive bound. + + + + + Defined by PostgreSQL to represent a lower exclusive bound. + + + + + Defined by PostgreSQL to represent an upper inclusive bound. + + + + + Defined by PostgreSQL to represent an upper exclusive bound. + + + + + Defined by PostgreSQL to separate the values for the upper and lower bounds. + + + + + The used by to convert bounds into . + + + + + True if implements ; otherwise, false. + + + + + Represents the empty range. This field is read-only. + + + + + The lower bound of the range. Only valid when is false. + + + + + The upper bound of the range. Only valid when is false. + + + + + The characteristics of the boundaries. + + + + + True if the lower bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the range is empty; otherwise, false. + + + + + Constructs an with inclusive and definite bounds. + + The lower bound of the range. + The upper bound of the range. + + + + Constructs an with definite bounds. + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + + + Attempts to determine if the range is malformed or implicitly empty. + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + True if the range is implicitly empty; otherwise, false. + + + + + Evaluates the boundary flags. + + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + The boundary characteristics. + + + + + Indicates whether the on the left is equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is equal to the on the right; otherwise, false. + + + + + Indicates whether the on the left is not equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is not equal to the on the right; otherwise, false. + + + + + + + + + + + + + + + + + Parses the well-known text representation of a PostgreSQL range type into a . + + A PosgreSQL range type in a well-known text format. + + The represented by the . + + + Malformed range literal. + + + Malformed range literal. Missing left parenthesis or bracket. + + + Malformed range literal. Missing right parenthesis or bracket. + + + Malformed range literal. Missing comma after lower bound. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Represents a type converter for . + + + + + Adds a to the closed form . + + + + + + + + + + + + + + + + + Represents characteristics of range type boundaries. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + The default flag. The range is not empty and has boundaries that are definite and exclusive. + + + + + The range is empty. E.g. '(0,0)', 'empty'. + + + + + The lower bound is inclusive. E.g. '[0,5]', '[0,5)', '[0,)'. + + + + + The upper bound is inclusive. E.g. '[0,5]', '(0,5]', '(,5]'. + + + + + The lower bound is infinite or indefinite. E.g. '(null,5]', '(-infinity,5]', '(,5]'. + + + + + The upper bound is infinite or indefinite. E.g. '[0,null)', '[0,infinity)', '[0,)'. + + + + + Both the lower and upper bounds are inclusive. + + + + + Both the lower and upper bounds are indefinite. + + + + + The lower bound is both inclusive and indefinite. This represents an error condition. + + + + + The upper bound is both inclusive and indefinite. This represents an error condition. + + + + + Represents a PostgreSQL tsquery. This is the base class for the + lexeme, not, or, and, and "followed by" nodes. + + + + + Node kind + + + + + NodeKind + + + + + Represents the empty tsquery. Should only be used at top level. + + + + + Lexeme + + + + + Not operator + + + + + And operator + + + + + Or operator + + + + + "Followed by" operator + + + + + Constructs an . + + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Parses a tsquery in PostgreSQL's text format. + + + + + + + + + + + + + Returns a value indicating whether this instance and a specified object represent the same value. + + An object to compare to this instance. + if g is equal to this instance; otherwise, . + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + if and are equal; otherwise, . + + + + Indicates whether the values of two specified objects are not equal. + + The first object to compare. + The second object to compare. + if and are not equal; otherwise, . + + + + TsQuery Lexeme node. + + + + + Lexeme text. + + + + + Weights is a bitmask of the Weight enum. + + + + + Prefix search. + + + + + Creates a tsquery lexeme with only lexeme text. + + Lexeme text. + + + + Creates a tsquery lexeme with lexeme text and weights. + + Lexeme text. + Bitmask of enum Weight. + + + + Creates a tsquery lexeme with lexeme text, weights and prefix search flag. + + Lexeme text. + Bitmask of enum Weight. + Is prefix search? + + + + Weight enum, can be OR'ed together. + + + + + None + + + + + D + + + + + C + + + + + B + + + + + A + + + + + + + + + + + TsQuery Not node. + + + + + Child node + + + + + Creates a not operator, with a given child node. + + + + + + + + + + + + Base class for TsQuery binary operators (& and |). + + + + + Left child + + + + + Right child + + + + + Constructs a . + + + + + TsQuery And node. + + + + + Creates an and operator, with two given child nodes. + + + + + + + + + + + + + TsQuery Or Node. + + + + + Creates an or operator, with two given child nodes. + + + + + + + + + + + + + TsQuery "Followed by" Node. + + + + + The distance between the 2 nodes, in lexemes. + + + + + Creates a "followed by" operator, specifying 2 child nodes and the + distance between them in lexemes. + + + + + + + + + + + + + + Represents an empty tsquery. Shold only be used as top node. + + + + + Creates a tsquery that represents an empty query. Should not be used as child node. + + + + + + + + + + + Represents a PostgreSQL tsvector. + + + + + Parses a tsvector in PostgreSQL's text format. + + + + + + + Returns the lexeme at a specific index + + + + + + + Gets the number of lexemes. + + + + + Returns an enumerator. + + + + + + Returns an enumerator. + + + + + + Gets a string representation in PostgreSQL's format. + + + + + + + + + + + + + + + Represents a lexeme. A lexeme consists of a text string and optional word entry positions. + + + + + Gets or sets the text. + + + + + Creates a lexeme with no word entry positions. + + + + + + Creates a lexeme with word entry positions. + + + + + + + Gets a word entry position. + + + + + + + Gets the number of word entry positions. + + + + + Creates a string representation in PostgreSQL's format. + + + + + + Represents a word entry position and an optional weight. + + + + + Creates a WordEntryPos with a given position and weight. + + Position values can range from 1 to 16383; larger numbers are silently set to 16383. + A weight labeled between A and D. + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + The position is a 14-bit unsigned integer indicating the position in the text this lexeme occurs. Cannot be 0. + + + + + Prints this lexeme in PostgreSQL's format, i.e. position is followed by weight (weight is only printed if A, B or C). + + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + D, the default + + + + + C + + + + + B + + + + + A + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + Represents a PostgreSQL point type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL line type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Line Segment type. + + + + + Represents a PostgreSQL box type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Path type. + + + + + Represents a PostgreSQL Polygon type. + + + + + Represents a PostgreSQL Circle type. + + + + + Represents a PostgreSQL inet type, which is a combination of an IPAddress and a subnet mask. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL cidr type. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL tid value + + + https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + + Block number + + + + + Tuple index within block + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + + + + The name of PostgreSQL field that corresponds to this CLR property or field + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + The name of PostgreSQL field that corresponds to this CLR property or field + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + +
+
diff --git a/packages/Npgsql.8.0.3/lib/netstandard2.1/Npgsql.dll b/packages/Npgsql.8.0.3/lib/netstandard2.1/Npgsql.dll new file mode 100644 index 0000000..3478f2d Binary files /dev/null and b/packages/Npgsql.8.0.3/lib/netstandard2.1/Npgsql.dll differ diff --git a/packages/Npgsql.8.0.3/lib/netstandard2.1/Npgsql.xml b/packages/Npgsql.8.0.3/lib/netstandard2.1/Npgsql.xml new file mode 100644 index 0000000..a24f820 --- /dev/null +++ b/packages/Npgsql.8.0.3/lib/netstandard2.1/Npgsql.xml @@ -0,0 +1,11584 @@ + + + + Npgsql + + + + + Indicates that the specified method requires the ability to generate new code at runtime, + for example through . + + + This allows tools to understand which methods are unsafe to call when compiling ahead of time. + + + + + Initializes a new instance of the class + with the specified message. + + + A message that contains information about the usage of dynamic code. + + + + + Gets a message that contains information about the usage of dynamic code. + + + + + Gets or sets an optional URL that contains more information about the method, + why it requires dynamic code, and what options a consumer has to deal with it. + + + + + Initializes a new instance of the class. + + + + Indicates that an API is experimental and it may change in the future. + + + Initializes a new instance of the class, specifying the ID that the compiler will use when reporting a use of the API the attribute applies to. + The ID that the compiler will use when reporting a use of the API the attribute applies to. + + + Gets the ID that the compiler will use when reporting a use of the API the attribute applies to. + The unique diagnostic ID. + + + Gets or sets the URL for corresponding documentation. + The API accepts a format string instead of an actual URL, creating a generic URL that includes the diagnostic ID. + The format string that represents a URL to corresponding documentation. + + + + Exception thrown when the program executes an instruction that was thought to be unreachable. + + + + + Initializes a new instance of the class with the default error message. + + + + + Initializes a new instance of the + class with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the + class with a specified error message and a reference to the inner exception that is the cause of + this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified message. + + An optional message associated with this attribute instance. + + + + Returns the optional message associated with this attribute instance. + + + + + Returns the optional URL associated with this attribute instance. + + + + + Gets the singleton instance. + + + + + Determines whether two object references refer to the same object instance. + + The first object to compare. + The second object to compare. + + if both and refer to the same object instance + or if both are ; otherwise, . + + + This API is a wrapper around . + It is not necessarily equivalent to calling . + + + + + Returns a hash code for the specified object. The returned hash code is based on the object + identity, not on the contents of the object. + + The object for which to retrieve the hash code. + A hash code for the identity of . + + This API is a wrapper around . + It is not necessarily equivalent to calling . + + + + + Decodes the specified to s using the specified + and outputs the result to . + + The which represents how the data in is encoded. + The to decode to characters. + The destination buffer to which the decoded characters will be written. + The number of chars written to . + Thrown if is not large enough to contain the encoded form of . + Thrown if contains data that cannot be decoded and is configured + to throw an exception when such data is seen. + + + + Gets a that will complete when this completes, when the specified timeout expires, or when the specified has cancellation requested. + + The representing the asynchronous wait. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The representing the asynchronous wait. + This method reproduces new to the .NET 6.0 API .WaitAsync. + + + + Note that this message doesn't actually contain the data, but only the length. Data is processed + directly from the connector's buffer. + + + + + DataRow is special in that it does not parse the actual contents of the backend message, + because in sequential mode the message will be traversed and processed sequentially by + . + + + + + Error and notice message field codes + + + + + A RowDescription message sent from the backend. + + + See https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + Given a string name, returns the field's ordinal index in the row. + + + + + A descriptive record on a single field received from PostgreSQL. + See RowDescription in https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + The field name. + + + + + The object ID of the field's data type. + + + + + The data type size (see pg_type.typlen). Note that negative values denote variable-width types. + + + + + The type modifier (see pg_attribute.atttypmod). The meaning of the modifier is type-specific. + + + + + If the field can be identified as a column of a specific table, the object ID of the table; otherwise zero. + + + + + If the field can be identified as a column of a specific table, the attribute number of the column; otherwise zero. + + + + + The format code being used for the field. + Currently will be text or binary. + In a RowDescription returned from the statement variant of Describe, the format code is not yet known and will always be zero. + + + + + Returns a string that represents the current object. + + + + + Base class for all classes which represent a message sent by the PostgreSQL backend. + + + + + Specifies the type of SQL statement, e.g. SELECT + + + + Streaming + + + Entire value should be buffered + + + Fixed size value should be buffered + + + Custom requirements + + + + CompositeFieldInfo constructor. + + Name of the field. + Type info for reading/writing. + The nominal field type, this may differ from the typeInfo.PgTypeId when the field is a domain type. + + + + Create temporary storage for all values that come before the constructor parameters can be saturated. + + + + + A reference to the type that houses the static method points to. + The continuation + + + A reference to the type that houses the static method points to. + The continuation + + + Note that for BIT(1), this resolver will return a bool by default, to align with SqlClient + (see discussion https://github.com/npgsql/npgsql/pull/362#issuecomment-59622101). + + + A converter to map strongly typed apis onto boxed converter results to produce a strongly typed converter over T. + + + Special value converter to be able to use struct converters as System.Nullable converters, it delegates all behavior to the effective converter. + + + Big endian array of numeric digits + + + + + + + If the destination ends up being too small the builder allocates instead + + + + + + + + + Whether the input consists of any non zero bits + + + Adapted from BigInteger, to allow us to operate directly on stack allocated bits + + + + Hacky temporary measure used by EFCore.PG to extract user-configured enum mappings. Accessed via reflection only. + + + + + A factory which get generate instances of , which describe a database + and the types it contains. When first connecting to a database, Npgsql will attempt to load information + about it via this factory. + + + + + Given a connection, loads all necessary information about the connected database, e.g. its types. + A factory should only handle the exact database type it was meant for, and return null otherwise. + + + An object describing the database to which is connected, or null if the + database isn't of the correct type and isn't handled by this factory. + + + + + An Npgsql resolver for type info. Used by Npgsql to read and write values to PostgreSQL. + + + + + Resolve a type info for a given type and data type name, at least one value will be non-null. + + The clr type being requested. + The postgres type being requested. + Used for configuration state and Npgsql type info or PostgreSQL type catalog lookups. + A result, or null if there was no match. + + + + Represents a connection to a PostgreSQL backend. Unlike NpgsqlConnection objects, which are + exposed to users, connectors are internal to Npgsql and are recycled by the connection pool. + + + + + The physical connection socket to the backend. + + + + + The physical connection stream to the backend, without anything on top. + + + + + The physical connection stream to the backend, layered with an SSL/TLS stream if in secure mode. + + + + + The parsed connection string. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + Buffer used for reading data. + + + + + If we read a data row that's bigger than , we allocate an oversize buffer. + The original (smaller) buffer is stored here, and restored when the connection is reset. + + + + + Buffer used for writing data. + + + + + The secret key of the backend for this connector, used for query cancellation. + + + + + The process ID of the backend for this connector. + + + + + The user name that has been inferred when the connector was opened + + + + + A unique ID identifying this connector, used for logging. Currently mapped to BackendProcessId + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + The current transaction status for this connector. + + + + + A transaction object for this connector. Since only one transaction can be in progress at any given time, + this instance is recycled. To check whether a transaction is currently in progress on this connector, + see . + + + + + The NpgsqlConnection that (currently) owns this connector. Null if the connector isn't + owned (i.e. idle in the pool) + + + + + The number of messages that were prepended to the current message chain, but not yet sent. + Note that this only tracks messages which produce a ReadyForQuery message + + + + + A ManualResetEventSlim used to make sure a cancellation request doesn't run + while we're reading responses for the prepended query + as we can't gracefully handle their cancellation. + + + + + If the connector is currently in COPY mode, holds a reference to the importer/exporter object. + Otherwise null. + + + + + Holds all run-time parameters received from the backend (via ParameterStatus messages) + + + + + Holds all run-time parameters in raw, binary format for efficient handling without allocations. + + + + + If this connector was broken, this contains the exception that caused the break. + + + + + + Used by the pool to indicate that I/O is currently in progress on this connector, so that another write + isn't started concurrently. Note that since we have only one write loop, this is only ever usedto + protect against an over-capacity writes into a connector that's currently *asynchronously* writing. + + + It is guaranteed that the currently-executing + Specifically, reading may occur - and the connector may even be returned to the pool - before this is + released. + + + + + + + + + + + + A lock that's taken while a cancellation is being delivered; new queries are blocked until the + cancellation is delivered. This reduces the chance that a cancellation meant for a previous + command will accidentally cancel a later one, see #615. + + + + + A lock that's taken to make sure no other concurrent operation is running. + Break takes it to set the state of the connector. + Anyone else should immediately check the state and exit + if the connector is closed. + + + + + A lock that's used to wait for the Cleanup to complete while breaking the connection. + + + + + The command currently being executed by the connector, null otherwise. + Used only for concurrent use error reporting purposes. + + + + + The connector source (e.g. pool) from where this connector came, and to which it will be returned. + Note that in multi-host scenarios, this references the host-specific rather than the + . + + + + + Contains the UTC timestamp when this connector was opened, used to implement + . + + + + + The minimum timeout that can be set on internal commands such as COMMIT, ROLLBACK. + + Precision is seconds + + + + Gets the current state of the connector + + + + + Returns whether the connector is open, regardless of any task it is currently performing + + + + + Opens the physical connection to the server. + + Usually called by the RequestConnector + Method of the connection pool manager. + + + + Prepends a message to be sent at the beginning of the next message chain. + + + + + Reads backend messages and discards them, stopping only after a message of the given type has + been seen. Only a sync I/O version of this method exists - in async flows we inline the loop + rather than calling an additional async method, in order to avoid the overhead. + + + + + Handles a new transaction indicator received on a ReadyForQuery message + + + + + Returns whether SSL is being used for the connection + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Creates another connector and sends a cancel request through it for this connector. This method never throws, but returns + whether the cancellation attempt failed. + + + + if the cancellation request was successfully delivered, or if it was skipped because a previous + request was already sent. if the cancellation request could not be delivered because of an exception + (the method logs internally). + + + This does not indicate whether the cancellation attempt was successful on the PostgreSQL side - only if the request was + delivered. + + + + + + Starts a new cancellable operation within an ongoing user action. This should only be used if a single user + action spans several different actions which each has its own cancellation tokens. For example, a command + execution is a single user action, but spans ExecuteReaderQuery, NextResult, Read and so forth. + + + Only one level of nested operations is supported. It is an error to call this method if it has previously + been called, and the returned was not disposed. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the + cancellation, and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or + a timeout occurs, followed by a client-side socket cancellation once + has elapsed. If , + PostgreSQL cancellation will be skipped and client-socket cancellation will occur immediately. + + + + + Closes ongoing operations, i.e. an open reader exists or a COPY operation still in progress, as + part of a connection close. + + + + + Called when an unexpected message has been received during an action. Breaks the + connector and returns the appropriate message. + + + + + Called when a connector becomes completely unusable, e.g. when an unexpected I/O exception is raised or when + we lose protocol sync. + Note that fatal errors during the Open phase do *not* pass through here. + + The exception that caused the break. + The exception given in for chaining calls. + + + + Closes the socket and cleans up client-side resources associated with this connector. + + + This method doesn't actually perform any meaningful I/O, and therefore is sync-only. + + + + + Called when a pooled connection is closed, and its connector is returned to the pool. + Resets the connector back to its initial state, releasing server-side sources + (e.g. prepared statements), resetting parameters to their defaults, and resetting client-side + state + + + + + The connector may have allocated an oversize read buffer, to hold big rows in non-sequential reading. + This switches us back to the original one and returns the buffer to . + + + + + Starts a user action. This makes sure that another action isn't already in progress, handles synchronization with keepalive, + and sets up cancellation. + + The new state to be set when entering this user action. + + The that is starting execution - if an is + thrown, it will reference this. + + + The cancellation token provided by the user. Callbacks will be registered on this token for executing the cancellation, + and the token will be included in any thrown . + + + If , PostgreSQL cancellation will be attempted when the user requests cancellation or a timeout + occurs, followed by a client-side socket cancellation once has + elapsed. If , PostgreSQL cancellation will be skipped and client-socket cancellation will occur + immediately. + + + + + An IDisposable wrapper around . + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Creates and returns a object associated with the . + + The text of the query. + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + This Stream is placed between NegotiateStream and the socket's NetworkStream (or SSLStream). It intercepts + traffic and performs the following operations: + * Outgoing messages are framed in PostgreSQL's PasswordMessage, and incoming are stripped of it. + * NegotiateStream frames payloads with a 5-byte header, which PostgreSQL doesn't understand. This header is + stripped from outgoing messages and added to incoming ones. + + + See https://referencesource.microsoft.com/#System/net/System/Net/_StreamFramer.cs,16417e735f0e9530,references + + + + + Expresses the exact state of a connector. + + + + + The connector has either not yet been opened or has been closed. + + + + + The connector is currently connecting to a PostgreSQL server. + + + + + The connector is connected and may be used to send a new query. + + + + + The connector is waiting for a response to a query which has been sent to the server. + + + + + The connector is currently fetching and processing query results. + + + + + The connector is currently waiting for asynchronous notifications to arrive. + + + + + The connection was broken because an unexpected error occurred which left it in an unknown state. + This state isn't implemented yet. + + + + + The connector is engaged in a COPY operation. + + + + + The connector is engaged in streaming replication. + + + + + Currently not in a transaction block + + + + + Currently in a transaction block + + + + + Currently in a failed transaction block (queries will be rejected until block is ended) + + + + + A new transaction has been requested but not yet transmitted to the backend. It will be transmitted + prepended to the next query. + This is a client-side state option only, and is never transmitted from the backend. + + + + + Specifies how to load/parse DataRow messages as they're received from the backend. + + + + + Load DataRows in non-sequential mode + + + + + Load DataRows in sequential mode + + + + + Skip DataRow messages altogether + + + + + Base class for implementations which provide information about PostgreSQL and PostgreSQL-like databases + (e.g. type definitions, capabilities...). + + + + + The hostname of IP address of the database. + + + + + The TCP port of the database. + + + + + The database name. + + + + + The version of the PostgreSQL database we're connected to, as reported in the "server_version" parameter. + Exposed via . + + + + + The PostgreSQL version string as returned by the server_version option. Populated during loading. + + + + + Whether the backend supports range types. + + + + + Whether the backend supports multirange types. + + + + + Whether the backend supports enum types. + + + + + Whether the backend supports the CLOSE ALL statement. + + + + + Whether the backend supports advisory locks. + + + + + Whether the backend supports the DISCARD SEQUENCES statement. + + + + + Whether the backend supports the UNLISTEN statement. + + + + + Whether the backend supports the DISCARD TEMP statement. + + + + + Whether the backend supports the DISCARD statement. + + + + + Reports whether the backend uses the newer integer timestamp representation. + + + + + Whether the database supports transactions. + + + + + Indexes backend types by their type OID. + + + + + Indexes backend types by their PostgreSQL internal name, including namespace (e.g. pg_catalog.int4). + Only used for enums and composites. + + + + + Indexes backend types by their PostgreSQL name, not including namespace. + If more than one type exists with the same name (i.e. in different namespaces) this + table will contain an entry with a null value. + Only used for enums and composites. + + + + + Initializes the instance of . + + + + + Initializes the instance of . + + + + + Provides all PostgreSQL types detected in this database. + + + + + + Parses a PostgreSQL server version (e.g. 10.1, 9.6.3) and returns a CLR Version. + + + + + Registers a new database info factory, which is used to load information about databases. + + + + + A buffer used by Npgsql to read data from the socket efficiently. + Provides methods which decode different values types and tracks the current position. + + + + + Timeout for sync and async reads + + + + + The total byte length of the buffer. + + + + + Same as , except that it does not throw an exception if an invalid char is + encountered (exception fallback), but rather replaces it with a question mark character (replacement + fallback). + + + + + The minimum buffer size possible. + + + + + Ensures that bytes are available in the buffer, and if + not, reads from the socket until enough is available. + + + + + Does not perform any I/O - assuming that the bytes to be skipped are in the memory buffer. + + + + + Skip a given number of bytes. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. + + + + + Seeks the first null terminator (\0) and returns the string up to it. The buffer must already + contain the entire string and its terminator. If any character could not be decoded, a question + mark character is returned instead of throwing an exception. + + + + + Seeks the first null terminator (\0) and returns the string up to it. Reads additional data from the network if a null + terminator isn't found in the buffered data. + + + + Does not throw ODE. + + + + A buffer used by Npgsql to write data to the socket efficiently. + Provides methods which encode different values types and tracks the current position. + + + + + Timeout for sync and async writes + + + + + The total byte length of the buffer. + + + + + The minimum buffer size possible. + + + + + Returns all contents currently written to the buffer (but not flushed). + Useful for pre-generating messages. + + + + + Whether this converter can handle the given format and with which buffer requirements. + + The data format. + Returns the buffer requirements. + Returns true if the given data format is supported. + The buffer requirements should not cover database NULL reads or writes, these are handled by the caller. + + + Never DbNull (struct types) + + + DbNull when *user code* + + + DbNull when value is null + + + DbNull when value is null or DBNull + + + + Gets the appropriate converter solely based on PgTypeId. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to read with based on the given field info. + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are cached once used. + Array or other collection converters depend on this to cache their own converter - which wraps the element converter - with the cache key being the element converter reference. + + + + + Gets the appropriate converter to write with based on the given value. + + + + The converter resolution. + + Implementations should not return new instances of the possible converters that can be returned, instead its expected these are + cached once used. Array or other collection converters depend on this to cache their own converter - which wraps the element + converter - with the cache key being the element converter reference. + + + + ReadBytes without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + ReadBytesAsync without memory management, the next read invalidates the underlying buffer(s), only use this for intermediate transformations. + + + + + + + The stream length, if any + + + + Used by GetSchema to be able to attempt to resolve all type catalog types without exceptions. + + + + Whether options should return a portable identifier (data type name) to prevent any generated id (oid) confusion across backends, this comes with a perf penalty. + + + A reference to the type that houses the static method points to. + The continuation + + + Throws if the instance is a PgResolverTypeInfo. + + + When result is null, the value was interpreted to be a SQL NULL. + + + When result is null or DBNull, the value was interpreted to be a SQL NULL. + + + Whether Converter.TypeToConvert matches PgTypeInfo.Type, if it doesn't object apis should be used. + + + + Gets a that can be used to write to the underlying buffer. + + Blocking flushes during writes that were expected to be non-blocking and vice versa cause an exception to be thrown unless allowMixedIO is set to true, false by default. + The stream. + + + + Represents the fully-qualified name of a PostgreSQL type. + + + + + The maximum length of names in an unmodified PostgreSQL installation. + + + We need to respect this to get to valid names when deriving them (for multirange/arrays etc). + This does not include the namespace. + + + + + Well-known PostgreSQL data type names. + + + + Base field type shared between tables and composites. + + + + A discriminated union of and . + + + + + + + + + + When this flag is true, and both type and pgTypeId are non null, a default info for the pgTypeId can be returned if an exact match + can't be found. + + + + + + + + + + + + Signals whether a resolver based TypeInfo can keep its PgTypeId undecided or whether it should follow mapping.DataTypeName. + + + + Match when the clr type and datatype name both match. + It's also the only requirement that participates in clr type fallback matching. + + + Match when the datatype name or CLR type matches while the other also matches or is absent. + + + Match when the datatype name matches and the clr type also matches or is absent. + + + A factory for well-known PgConverters. + + + Returns the first default converter or the first converter that matches both type and dataTypeName. + If just a type was passed and no default was found we return the first converter with a type match. + + + Returns whether type matches any of the types we register pg arrays as. + + + + Launches MIT Kerberos klist and parses out the default principal from it. + Caches the result. + + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A component which translates a CLR name (e.g. SomeClass) into a database name (e.g. some_class) + according to some scheme. + Used for mapping enum and composite types. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which preserves CLR names (e.g. SomeClass) when mapping names to the database. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + A name translator which converts standard CLR names (e.g. SomeClass) to snake-case database + names (some_class) + + + + + Creates a new . + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Creates a new . + + + Uses the legacy naming convention if , otherwise it uses the new naming convention. + + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + Given a CLR type name (e.g class, struct, enum), translates its name to a database type name. + + + + + Given a CLR member name (property or field), translates its name to a database type name. + + + + + Converts a string to its snake_case equivalent. + + The value to convert. + + An object that supplies culture-specific casing rules. + This will be used when converting names to lower case. + If then will be used. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Controls whether to place error barriers between all batch commands within this batch. Default to . + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Enabling error barriers ensures that errors do not affect other commands in the batch. + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message between each command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + To control error barriers on a command-by-command basis, see . + + + + + + Marks all of the batch's result columns as either known or unknown. + Unknown results column are requested them from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Initializes a new . + + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of a object. + + An object. + + + + Returns whether the method is implemented. + + + + + Appends an error barrier after this batch command. Defaults to the value of on the + batch. + + + + By default, any exception in a command causes later commands in the batch to be skipped, and earlier commands to be rolled back. + Appending an error barrier ensures that errors from this command (or previous ones) won't cause later commands to be skipped, + and that errors from later commands won't cause this command (or previous ones) to be rolled back). + + + Note that if the batch is executed within an explicit transaction, the first error places the transaction in a failed state, + causing all later commands to fail in any case. As a result, this option is useful mainly when there is no explicit transaction. + + + At the PostgreSQL wire protocol level, this corresponds to inserting a Sync message after this command, rather than grouping + all the batch's commands behind a single terminating Sync. + + + Controlling error barriers on a command-by-command basis is an advanced feature, consider enabling error barriers for the entire + batch via . + + + + + + The number of rows affected or retrieved. + + + See the command tag in the CommandComplete message for the meaning of this value for each , + https://www.postgresql.org/docs/current/static/protocol-message-formats.html + + + + + + + + Specifies the type of query, e.g. SELECT. + + + + + For an INSERT, the object ID of the inserted row if is 1 and + the target table has OIDs; otherwise 0. + + + + + The SQL as it will be sent to PostgreSQL, after any rewriting performed by Npgsql (e.g. named to positional parameter + placeholders). + + + + + The list of parameters, ordered positionally, as it will be sent to PostgreSQL. + + + If the user provided positional parameters, this references the (in batching mode) or the list + backing (in non-batching) mode. If the user provided named parameters, this is a + separate list containing the re-ordered parameters. + + + + + The RowDescription message for this query. If null, the query does not return rows (e.g. INSERT) + + + + + If this statement has been automatically prepared, references the . + Null otherwise. + + + + + Holds the server-side (prepared) ASCII statement name. Empty string for non-prepared statements. + + + + + Whether this statement has already been prepared (including automatic preparation). + + + + + Returns a prepared statement for this statement (including automatic preparation). + + + + + Initializes a new . + + + + + Initializes a new . + + The text of the . + + + + Returns the . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides an API for a binary COPY TO operation, a high-performance data export mechanism from + a PostgreSQL table. Initiated by + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Starts reading a single row, must be invoked before reading any columns. + + + The number of columns in the row. -1 if there are no further rows. + Note: This will currently be the same value for all rows, but this may change in the future. + + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value and moves ahead to the next column. + If the column is null an exception is thrown. + + + The type of the column to be read. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be read. + The value of the column + + + + Reads the current column, returns its value according to and + moves ahead to the next column. + If the column is null an exception is thrown. + + + In some cases isn't enough to infer the data type coming in from the + database. This parameter can be used to unambiguously specify the type. An example is the JSONB + type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be read. + The value of the column + + + + Returns whether the current column is null. + + + + + Skips the current column without interpreting its value. + + + + + Skips the current column without interpreting its value. + + + + + Cancels an ongoing export. + + + + + Async cancels an ongoing export. + + + + + Completes that binary export and sets the connection back to idle state + + + + + Async completes that binary export and sets the connection back to idle state + + + + + + Provides an API for a binary COPY FROM operation, a high-performance data import mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The number of columns in the current (not-yet-written) row. + + + + + The number of columns, as returned from the backend in the CopyInResponse. + + + + + Current timeout + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Starts writing a single row, must be invoked before writing any columns. + + + + + Writes a single column in the current row. + + The value to be written + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row. + + The value to be written + + An optional token to cancel the asynchronous operation. The default value is . + + + The type of the column to be written. This must correspond to the actual type or data + corruption will occur. If in doubt, use to manually + specify the type. + + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter can be used to unambiguously specify the type. An example is + the JSONB type, for which will be a simple string but for which + must be specified as . + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + The .NET type of the column to be written. + + + + Writes a single column in the current row as type . + + The value to be written + + In some cases isn't enough to infer the data type to be written to + the database. This parameter and be used to unambiguously specify the type. + + + An optional token to cancel the asynchronous operation. The default value is . + + The .NET type of the column to be written. + + + + Writes a single null column value. + + + + + Writes a single null column value. + + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + An array of column values to be written as a single row + + + + Writes an entire row of columns. + Equivalent to calling , followed by multiple + on each value. + + + An optional token to cancel the asynchronous operation. The default value is . + + An array of column values to be written as a single row + + + + Completes the import operation. The writer is unusable after this operation. + + + + + Completes the import operation. The writer is unusable after this operation. + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + + Async terminates the ongoing binary import and puts the connection back into the idle state, where regular commands can be executed. + + + Note that if hasn't been invoked before calling this, the import will be cancelled and all changes will + be reverted. + + + + + + Represents a SQL statement or function (stored procedure) to execute + against a PostgreSQL database. This class cannot be inherited. + + + + + If this command is (explicitly) prepared, references the connector on which the preparation happened. + Used to detect when the connector was changed (i.e. connection open/close), meaning that the command + is no longer prepared. + + + + + Whether this is wrapped by an . + + + + + Returns details about each statement that this command has executed. + Is only populated when an Execute* method is called. + + + + + Whether this command is cached by and returned by . + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the text of the query. + + The text of the query. + + + + Initializes a new instance of the class with the text of the query and a + . + + The text of the query. + A that represents the connection to a PostgreSQL server. + + + + Initializes a new instance of the class with the text of the query, a + , and the . + + The text of the query. + A that represents the connection to a PostgreSQL server. + The in which the executes. + + + + Used when this instance is wrapped inside an . + + + + + Used when this instance is wrapped inside an . + + + + + Gets or sets the SQL statement or function (stored procedure) to execute at the data source. + + The SQL statement or function (stored procedure) to execute. The default is an empty string. + + + + Gets or sets the wait time (in seconds) before terminating the attempt to execute a command and generating an error. + + The time (in seconds) to wait for the command to execute. The default value is 30 seconds. + + + + Gets or sets a value indicating how the property is to be interpreted. + + + One of the values. The default is . + + + + + DB connection. + + + + + Gets or sets the used by this instance of the . + + The connection to a data source. The default value is . + + + + Design time visible. + + + + + Gets or sets how command results are applied to the DataRow when used by the + DbDataAdapter.Update(DataSet) method. + + One of the values. + + + + Returns whether this query will execute as a prepared (compiled) query. + + + + + Marks all of the query's result columns as either known or unknown. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + + + Marks the query's result columns as known or unknown, on a column-by-column basis. + Unknown result columns are requested from PostgreSQL in text format, and Npgsql makes no + attempt to parse them. They will be accessible as strings only. + + + If the query includes several queries (e.g. SELECT 1; SELECT 2), this will only apply to the first + one. The rest of the queries will be fetched and parsed as usual. + + The array size must correspond exactly to the number of result columns the query returns, or an + error will be raised. + + + + + The current state of the command + + + + + Creates a new instance of an object. + + A object. + + + + Creates a new instance of a object. + + An object. + + + + DB parameter collection. + + + + + Gets the . + + The parameters of the SQL statement or function (stored procedure). The default is an empty collection. + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + + + Creates a server-side prepared statement on the PostgreSQL server. + This will make repeated future executions of this command much faster. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + + + Unprepares a command, closing server-side statements associated with it. + Note that this only affects commands explicitly prepared with , not + automatically prepared statements. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Executes a SQL statement against the connection and returns the number of rows affected. + + The number of rows affected if known; -1 otherwise. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the number of rows affected if known; -1 otherwise. + + + + Executes the query, and returns the first column of the first row + in the result set returned by the query. Extra columns or rows are ignored. + + The first column of the first row in the result set, + or a null reference if the result set is empty. + + + + Asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation, with the first column of the + first row in the result set, or a null reference if the result set is empty. + + + + Executes the command text against the connection. + + A task representing the operation. + + + + Executes the command text against the connection. + + An instance of . + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + A task representing the operation. + + + + An asynchronous version of , which executes + the against the + and returns a . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + An asynchronous version of , + which executes the against the + and returns a . + + One of the enumeration values that specifies the command behavior. + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + DB transaction. + + + + + This property is ignored by Npgsql. PostgreSQL only supports a single transaction at a given time on + a given connection, and all commands implicitly run inside the current transaction started via + + + + + + Attempts to cancel the execution of an . + + As per the specs, no exception will be thrown by this method in case of failure. + + + + + + + Fixes up the text/binary flag on result columns. + Since Prepare() describes a statement rather than a portal, the resulting RowDescription + will have text format on all result columns. Fix that up. + + + Note that UnknownResultTypeList only applies to the first query, while AllResultTypesAreUnknown applies + to all of them. + + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + Create a new command based on this one. + + A new NpgsqlCommand object. + + + + This event is unsupported by Npgsql. Use instead. + + + + + This class creates database commands for automatic insert, update and delete operations. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The adapter. + + + + Gets or sets the beginning character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The beginning character or characters to use. The default is an empty string. + + + + + + + + Gets or sets the ending character or characters to use when specifying database objects (for example, tables or columns) whose names contain characters such as spaces or reserved tokens. + + + The ending character or characters to use. The default is an empty string. + + + + + + + + + This method is responsible to derive the command parameter list with values obtained from function definition. + It clears the Parameters collection of command. Also, if there is any parameter type which is not supported by Npgsql, an InvalidOperationException will be thrown. + Parameters name will be parameter1, parameter2, ... for CommandType.StoredProcedure and named after the placeholder for CommandType.Text + + NpgsqlCommand whose function parameters will be obtained. + + + + Gets the automatically generated object required + to perform insertions at the data source. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated object required to perform insertions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform insertions. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform updates at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform updates. + + + + + Gets the automatically generated object required to perform updates + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform updates. + + + + + Gets the automatically generated System.Data.Common.DbCommand object required + to perform deletions at the data source. + + + The automatically generated System.Data.Common.DbCommand object required to perform deletions. + + + + + Gets the automatically generated object required to perform deletions + at the data source, optionally using columns for parameter names. + + + If , generate parameter names matching column names, if possible. + If , generate @p1, @p2, and so on. + + + The automatically generated object required to perform deletions. + + + + + Applies the parameter information. + + The parameter. + The row. + Type of the statement. + If set to [where clause]. + + + + Returns the name of the specified parameter in the format of @p#. + + The number to be included as part of the parameter's name.. + + The name of the parameter with the specified number appended as part of the parameter name. + + + + + Returns the full parameter name, given the partial parameter name. + + The partial name of the parameter. + + The full parameter name corresponding to the partial parameter name requested. + + + + + Returns the placeholder for the parameter in the associated SQL statement. + + The number to be included as part of the parameter's name. + + The name of the parameter with the specified number appended. + + + + + Registers the to handle the event for a . + + The to be used for the update. + + + + Adds an event handler for the event. + + The sender + A instance containing information about the event. + + + + Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier, including properly escaping any embedded quotes in the identifier. + + The original unquoted identifier. + + The quoted version of the identifier. Embedded quotes within the identifier are properly escaped. + + + + + Unquoted identifier parameter cannot be null + + + + Given a quoted identifier, returns the correct unquoted form of that identifier, including properly un-escaping any embedded quotes in the identifier. + + The identifier that will have its embedded quotes removed. + + The unquoted identifier, with embedded quotes properly un-escaped. + + + + + Quoted identifier parameter cannot be null + + + + This class represents a connection to a PostgreSQL server. + + + + + The connection string, without the password after open (unless Persist Security Info=true) + + + + + The original connection string provided by the user, including the password. + + + + + The physical connection to the database. This is when the connection is closed, + and also when it is open in multiplexing mode and unbound (e.g. not in a transaction). + + + + + The parsed connection string. Set only after the connection is opened. + + + + + Flag used to make sure we never double-close a connection, returning it twice to the pool. + + + + + The global type mapper, which contains defaults used by all new connections. + Modify mappings on this mapper to affect your entire application. + + + + + Connection-level type mapping is no longer supported. See the 7.0 release notes for configuring type mapping on NpgsqlDataSource. + + + + + The default TCP/IP port for PostgreSQL. + + + + + Maximum value for connection timeout. + + + + + Tracks when this connection was bound to a physical connector (e.g. at open-time, when a transaction + was started...). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Opens a database connection with the property settings specified by the . + + + + + This is the asynchronous version of . + + + Do not invoke other methods and properties of the object until the returned Task is complete. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + The connection string that includes the server name, + the database name, and other parameters needed to establish + the initial connection. The default value is an empty string. + + + + + Gets or sets the delegate used to generate a password for new database connections. + + +

+ This delegate is executed when a new database connection is opened that requires a password. +

+

+ The and connection + string properties have precedence over this delegate: it will not be executed if a password is specified, or if the specified or + default Passfile contains a valid entry. +

+

+ Due to connection pooling this delegate is only executed when a new physical connection is opened, not when reusing a connection + that was previously opened from the pool. +

+
+
+ + + Backend server host name. + + + + + Backend server port. + + + + + Gets the time (in seconds) to wait while trying to establish a connection + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a connection to open. The default value is 15 seconds. + + + + Gets the time (in seconds) to wait while trying to execute a command + before terminating the attempt and generating an error. + + The time (in seconds) to wait for a command to complete. The default value is 30 seconds. + + + + Gets the name of the current database or the database to be used after a connection is opened. + + The name of the current database or the name of the database to be + used after a connection is opened. The default value is the empty string. + + + + Gets the string identifying the database server (host and port) + + + The name of the database server (host and port). If the connection uses a Unix-domain socket, + the path to that socket is returned. The default value is the empty string. + + + + + User name. + + + + + Gets the current state of the connection. + + A bitwise combination of the values. The default is Closed. + + + + Gets whether the current state of the connection is Open or Closed + + ConnectionState.Open, ConnectionState.Closed or ConnectionState.Connecting + + + + A cached command handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + Creates and returns a + object associated with the . + + A object. + + + + Creates and returns a object associated with the . + + A object. + + + + A cached batch handed out by , which is returned when disposed. Useful for reducing allocations. + + + + + Creates and returns a object associated with the . + + A object. + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Begins a database transaction. + + A object representing the new transaction. + + Nested transactions are not supported. + Transactions created by this method will have the isolation level. + + + + + Begins a database transaction with the specified isolation level. + + The isolation level under which the transaction should run. + A object representing the new transaction. + Nested transactions are not supported. + + + + Asynchronously begins a database transaction. + + The isolation level under which the transaction should run. + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose property is an object representing the new transaction. + + Nested transactions are not supported. + + + + + Asynchronously begins a database transaction. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose Result property is an object representing the new transaction. + + Nested transactions are not supported. + Transactions created by this method will have the isolation level. + + + + + Asynchronously begins a database transaction. + + The isolation level under which the transaction should run. + + An optional token to cancel the asynchronous operation. The default value is . + + A task whose property is an object representing the new transaction. + + Nested transactions are not supported. + + + + + Enlist transaction. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases the connection. If the connection is pooled, it will be returned to the pool and made available for re-use. + If it is non-pooled, the physical connection will be closed. + + + + + Releases all resources used by the . + + when called from ; + when being called from the finalizer. + + + + Releases all resources used by the . + + + + + Fires when PostgreSQL notices are received from PostgreSQL. + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + Note that notices are very different from notifications (see the event). + + + + + Fires when PostgreSQL notifications are received from PostgreSQL. + + + PostgreSQL notifications are sent when your connection has registered for notifications on a specific channel via the + LISTEN command. NOTIFY can be used to generate such notifications, allowing for an inter-connection communication channel. + + Note that notifications are very different from notices (see the event). + + + + + Returns whether SSL is being used for the connection. + + + + + Returns whether SCRAM-SHA256 is being user for the connection + + + + + Returns whether SCRAM-SHA256-PLUS is being user for the connection + + + + + Selects the local Secure Sockets Layer (SSL) certificate used for authentication. + + + See + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + + + Cannot be used in conjunction with , and + . + + + See . + + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Reports whether the backend uses the newer integer timestamp representation. + Note that the old floating point representation is not supported. + Meant for use by type plugins (e.g. NodaTime) + + + + + The connection's timezone as reported by PostgreSQL, in the IANA/Olson database format. + + + + + Holds all PostgreSQL parameters received for this connection. Is updated if the values change + (e.g. as a result of a SET command). + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY FROM STDIN operation, a high-performance data import mechanism to a PostgreSQL table. + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to write rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a binary COPY TO STDOUT operation, a high-performance data export mechanism from a PostgreSQL table. + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A which can be used to read rows and columns + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY FROM STDIN operation, a data import mechanism to a PostgreSQL table. + It is the user's responsibility to send the textual input according to the format specified + in . + + A COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextWriter that can be used to send textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a textual COPY TO STDOUT operation, a data export mechanism from a PostgreSQL table. + It is the user's responsibility to parse the textual input according to the format specified + in . + + A COPY TO STDOUT SQL command + An optional token to cancel the asynchronous operation. The default value is None. + + A TextReader that can be used to read textual data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Begins a raw binary COPY operation (TO STDOUT or FROM STDIN), a high-performance data export/import mechanism to a PostgreSQL table. + Note that unlike the other COPY API methods, doesn't implement any encoding/decoding + and is unsuitable for structured import/export operation. It is useful mainly for exporting a table as an opaque + blob, for the purpose of importing it back later. + + A COPY TO STDOUT or COPY FROM STDIN SQL command + An optional token to cancel the asynchronous operation. The default value is None. + A that can be used to read or write raw binary data. + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds, passed to . + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value is passed to . + + true if an asynchronous message was received, false if timed out. + + + + Waits until an asynchronous PostgreSQL messages (e.g. a notification) arrives, and + exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value, in milliseconds. + The default value is 0, which indicates an infinite time-out period. + Specifying -1 also indicates an infinite time-out period. + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + The time-out value as + + + An optional token to cancel the asynchronous operation. The default value is . + + true if an asynchronous message was received, false if timed out. + + + + Waits asynchronously until an asynchronous PostgreSQL messages (e.g. a notification) + arrives, and exits immediately. The asynchronous message is delivered via the normal events + (, ). + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Checks whether the connection is currently bound to a connector, and if so, returns it via + . + + + + + Binds this connection to a physical connector. This happens when opening a non-multiplexing connection, + or when starting a transaction on a multiplexed connection. + + + + + Ends binding scope to the physical connection and returns it to the pool. Only useful with multiplexing on. + + + After this method is called, under no circumstances the physical connection (connector) should ever be used if multiplexing is on. + See #3249. + + + + + Returns the supported collections + + + + + Returns the schema collection specified by the collection name. + + The collection name. + The collection specified. + + + + Returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + The collection specified. + + + + Asynchronously returns the supported collections. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name. + + The collection name. + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Asynchronously returns the schema collection specified by the collection name filtered by the restrictions. + + The collection name. + + The restriction values to filter the results. A description of the restrictions is contained + in the Restrictions collection. + + + An optional token to cancel the asynchronous operation. The default value is . + + The collection specified. + + + + Creates a closed connection with the connection string and authentication details of this message. + + + + + Clones this connection, replacing its connection string with the given one. + This allows creating a new connection with the same security information + (password, SSL callbacks) while changing other connection parameters (e.g. + database or pooling) + + + + + This method changes the current database by disconnecting from the actual + database and connecting to the specified. + + The name of the database to use in place of the current database. + + + + DB provider factory. + + + + + Clears the connection pool. All idle physical connections in the pool of the given connection are + immediately closed, and any busy connections which were opened before was called + will be closed when returned to the pool. + + + + + Clear all connection pools. All idle physical connections in all pools are immediately closed, and any busy + connections which were opened before was called will be closed when returned + to their pool. + + + + + Unprepares all prepared statements on this connection. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + Flushes the type cache for this connection's connection string and reloads the types for this connection only. + Type changes will appear for other connections only after they are re-opened from the pool. + + + + + This event is unsupported by Npgsql. Use instead. + + + + + The connection is currently not bound to a connector. + + + + + The connection is bound to its connector for the scope of the entire connection + (i.e. non-multiplexed connection). + + + + + The connection is bound to its connector for the scope of a transaction. + + + + + The connection is bound to its connector for the scope of a COPY operation. + + + + + The connection is bound to its connector for the scope of a single reader. + + + + + The connection is bound to its connector for an unspecified, temporary scope; the code that initiated + the binding is also responsible to unbind it. + + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notice information (e.g. message, severity...). + + + + Represents a method that handles the event. + + The source of the event. + A that contains the notification payload. + + + + Represents a method that allows the application to provide a certificate collection to be used for SSL client authentication + + + A to be filled with one or more client + certificates. + + + + + Represents a method that allows the application to provide a password at connection time in code rather than configuration + + Hostname + Port + Database Name + User + A valid password for connecting to the database + + + + Provides a simple way to create and manage the contents of connection strings used by + the class. + + + + + Cached DataSource value to reduce allocations on NpgsqlConnection.DataSource.get + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class. + + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class, optionally using ODBC rules for quoting values. + + true to use {} to delimit fields; false to use quotation marks. + + + + Initializes a new instance of the NpgsqlConnectionStringBuilder class and sets its . + + + + + GeneratedAction and GeneratedActions exist to be able to produce a streamlined binary footprint for NativeAOT. + An idiomatic approach where each action has its own method would double the binary size of NpgsqlConnectionStringBuilder. + + + + + Gets or sets the value associated with the specified key. + + The key of the item to get or set. + The value associated with the specified key. + + + + Adds an item to the . + + The key-value pair to be added. + + + + Removes the entry with the specified key from the DbConnectionStringBuilder instance. + + The key of the key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Removes the entry from the DbConnectionStringBuilder instance. + + The key/value pair to be removed from the connection string in this DbConnectionStringBuilder. + true if the key existed within the connection string and was removed; false if the key did not exist. + + + + Clears the contents of the instance. + + + + + Determines whether the contains a specific key. + + The key to locate in the . + true if the contains an entry with the specified key; otherwise false. + + + + Determines whether the contains a specific key-value pair. + + The item to locate in the . + true if the contains the entry; otherwise false. + + + + Retrieves a value corresponding to the supplied key from this . + + The key of the item to retrieve. + The value corresponding to the key. + true if keyword was found within the connection string, false otherwise. + + + + The hostname or IP address of the PostgreSQL server to connect to. + + + + + The TCP/IP port of the PostgreSQL server. + + + + + The PostgreSQL database to connect to. + + + + + The username to connect with. + + + + + The password to connect with. + + + + + Path to a PostgreSQL password file (PGPASSFILE), from which the password would be taken. + + + + + The optional application name parameter to be sent to the backend during connection initiation. + + + + + Whether to enlist in an ambient TransactionScope. + + + + + Gets or sets the schema search path. + + + + + Gets or sets the client_encoding parameter. + + + + + Gets or sets the .NET encoding that will be used to encode/decode PostgreSQL string data. + + + + + Gets or sets the PostgreSQL session timezone, in Olson/IANA database format. + + + + + Controls whether SSL is required, disabled or preferred, depending on server support. + + + + + Location of a client certificate to be sent to the server. + + + + + Location of a client key for a client certificate to be sent to the server. + + + + + Password for a key for a client certificate. + + + + + Location of a CA certificate used to validate the server certificate. + + + + + Whether to check the certificate revocation list during authentication. + False by default. + + + + + The Kerberos service name to be used for authentication. + + + + + The Kerberos realm to be used for authentication. + + + + + Gets or sets a Boolean value that indicates if security-sensitive information, such as the password, is not returned as part of the connection if the connection is open or has ever been in an open state. + + + + + When enabled, parameter values are logged when commands are executed. Defaults to false. + + + + + When enabled, PostgreSQL error details are included on and + . These can contain sensitive data. + + + + + Controls whether channel binding is required, disabled or preferred, depending on server support. + + + + + Whether connection pooling should be used. + + + + + The minimum connection pool size. + + + + + The maximum connection pool size. + + + + + The time to wait before closing idle connections in the pool if the count + of all connections exceeds MinPoolSize. + + The time (in seconds) to wait. The default value is 300. + + + + How many seconds the pool waits before attempting to prune idle connections that are beyond + idle lifetime (. + + The interval (in seconds). The default value is 10. + + + + The total maximum lifetime of connections (in seconds). Connections which have exceeded this value will be + destroyed instead of returned from the pool. This is useful in clustered configurations to force load + balancing between a running server and a server just brought online. + + The time (in seconds) to wait, or 0 to to make connections last indefinitely (the default). + + + + The time to wait (in seconds) while trying to establish a connection before terminating the attempt and generating an error. + Defaults to 15 seconds. + + + + + The time to wait (in seconds) while trying to execute a command before terminating the attempt and generating an error. + Defaults to 30 seconds. + + + + + The time to wait (in milliseconds) while trying to read a response for a cancellation request for a timed out or cancelled query, before terminating the attempt and generating an error. + Zero for infinity, -1 to skip the wait. + Defaults to 2000 milliseconds. + + + + + Determines the preferred PostgreSQL target server type. + + + + + Enables balancing between multiple hosts by round-robin. + + + + + Controls for how long the host's cached state will be considered as valid. + + + + + The number of seconds of connection inactivity before Npgsql sends a keepalive query. + Set to 0 (the default) to disable. + + + + + Whether to use TCP keepalive with system defaults if overrides isn't specified. + + + + + The number of seconds of connection inactivity before a TCP keepalive query is sent. + Use of this option is discouraged, use instead if possible. + Set to 0 (the default) to disable. + + + + + The interval, in seconds, between when successive keep-alive packets are sent if no acknowledgement is received. + Defaults to the value of . must be non-zero as well. + + + + + Determines the size of the internal buffer Npgsql uses when reading. Increasing may improve performance if transferring large values from the database. + + + + + Determines the size of the internal buffer Npgsql uses when writing. Increasing may improve performance if transferring large values to the database. + + + + + Determines the size of socket read buffer. + + + + + Determines the size of socket send buffer. + + + + + The maximum number SQL statements that can be automatically prepared at any given point. + Beyond this number the least-recently-used statement will be recycled. + Zero (the default) disables automatic preparation. + + + + + The minimum number of usages an SQL statement is used before it's automatically prepared. + Defaults to 5. + + + + + If set to true, a pool connection's state won't be reset when it is closed (improves performance). + Do not specify this unless you know what you're doing. + + + + + Load table composite type definitions, and not just free-standing composite types. + + + + + Set the replication mode of the connection + + + This property and its corresponding enum are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Set PostgreSQL configuration parameter default values for the connection. + + + + + Configure the way arrays of value types are returned when requested as object instances. + + + + + Enables multiplexing, which allows more efficient use of connections. + + + + + When multiplexing is enabled, determines the maximum number of outgoing bytes to buffer before + flushing to the network. + + + + + A compatibility mode for special PostgreSQL server types. + + + + + Whether to trust the server certificate without validating it. + + + + + The time to wait (in seconds) while trying to execute a an internal command before terminating the attempt and generating an error. + + + + + Determines whether the specified object is equal to the current object. + + + + + Hash function. + + + + + + Gets an containing the keys of the . + + + + + Gets an containing the values in the . + + + + + Copies the elements of the to an Array, starting at a particular Array index. + + + The one-dimensional Array that is the destination of the elements copied from . + The Array must have zero-based indexing. + + + The zero-based index in array at which copying begins. + + + + + Returns an enumerator that iterates through the . + + + + + + + + + Marks on which participate in the connection + string. Optionally holds a set of synonyms for the property. + + + + + Holds a list of synonyms for the property. + + + + + Creates a . + + + + + Creates a . + + + + + An option specified in the connection string that activates special compatibility features. + + + + + No special server compatibility mode is active + + + + + The server is an Amazon Redshift instance. + + + + + The server is doesn't support full type loading from the PostgreSQL catalogs, support the basic set + of types via information hardcoded inside Npgsql. + + + + + Specifies how to manage SSL. + + + + + SSL is disabled. If the server requires SSL, the connection will fail. + + + + + Prefer non-SSL connections if the server allows them, but allow SSL connections. + + + + + Prefer SSL connections if the server allows them, but allow connections without SSL. + + + + + Fail the connection if the server doesn't support SSL. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate. + + + + + Fail the connection if the server doesn't support SSL. Also verifies server certificate with host's name. + + + + + Specifies how to manage channel binding. + + + + + Channel binding is disabled. If the server requires channel binding, the connection will fail. + + + + + Prefer channel binding if the server allows it, but connect without it if not. + + + + + Fail the connection if the server doesn't support channel binding. + + + + + Specifies how the mapping of arrays of + value types + behaves with respect to nullability when they are requested via an API returning an . + + + + + Arrays of value types are always returned as non-nullable arrays (e.g. int[]). + If the PostgreSQL array contains a NULL value, an exception is thrown. This is the default mode. + + + + + Arrays of value types are always returned as nullable arrays (e.g. int?[]). + + + + + The type of array that gets returned is determined at runtime. + Arrays of value types are returned as non-nullable arrays (e.g. int[]) + if the actual instance that gets returned doesn't contain null values + and as nullable arrays (e.g. int?[]) if it does. + + When using this setting, make sure that your code is prepared to the fact + that the actual type of array instances returned from APIs like + may change on a row by row base. + + + + Specifies whether the connection shall be initialized as a physical or + logical replication connection + + + This enum and its corresponding property are intentionally kept internal as they + should not be set by users or even be visible in their connection strings. + Replication connections are a special kind of connection that is encapsulated in + + and . + + + + + Replication disabled. This is the default + + + + + Physical replication enabled + + + + + Logical replication enabled + + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + Represents the method that handles the events. + + The source of the event. + An that contains the event data. + + + + This class represents an adapter from many commands: select, update, insert and delete to fill a . + + + + + Row updated event. + + + + + Row updating event. + + + + + Default constructor. + + + + + Constructor. + + + + + + Constructor. + + + + + + + Constructor. + + + + + + + Create row updated event. + + + + + Create row updating event. + + + + + Raise the RowUpdated event. + + + + + + Raise the RowUpdating event. + + + + + + Delete command. + + + + + Select command. + + + + + Update command. + + + + + Insert command. + + + + + Reads a forward-only stream of rows from a data source. + + + + + The behavior of the command with which this reader was executed. + + + + + In multiplexing, this is as the sending is managed in the write multiplexing loop, + and does not need to be awaited by the reader. + + + + + Holds the list of statements being executed by this reader. + + + + + The index of the current query resultset we're processing (within a multiquery) + + + + + Records, for each column, its starting offset and length in the current row. + Used only in non-sequential mode. + + + + + The index of the column that we're on, i.e. that has already been parsed, is + is memory and can be retrieved. Initialized to -1, which means we're on the column + count (which comes before the first column). + + + + + The position in the buffer at which the current data row message ends. + Used only when the row is consumed non-sequentially. + + + + + Determines, if we can consume the row non-sequentially. + Mostly useful for a sequential mode, when the row is already in the buffer. + Should always be true for the non-sequential mode. + + + + + The RowDescription message for the current resultset being processed + + + + + Stores the last converter info resolved by column, to speed up repeated reading. + + + + + Whether the current result set has rows + + + + + Is raised whenever Close() is called. + + + + + Advances the reader to the next record in a result set. + + true if there are more rows; otherwise false. + + The default position of a data reader is before the first record. Therefore, you must call Read to begin accessing data. + + + + + This is the asynchronous version of + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Advances the reader to the next result when reading the results of a batch of statements. + + + + + + This is the asynchronous version of NextResult. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous operation. + + + + Internal implementation of NextResult + + + + + Note that in SchemaOnly mode there are no resultsets, and we read nothing from the backend (all + RowDescriptions have already been processed and are available) + + + + + Gets a value indicating the depth of nesting for the current row. Always returns zero. + + + + + Gets a value indicating whether the data reader is closed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. -1 for SELECT statements; 0 if no rows were affected or the statement failed. + + + + + Gets the number of rows changed, inserted, or deleted by execution of the SQL statement. + + + The number of rows changed, inserted, or deleted. 0 for SELECT statements, if no rows were affected or the statement failed. + + + + + Returns details about each statement that this reader will or has executed. + + + Note that some fields (i.e. rows and oid) are only populated as the reader + traverses the result. + + For commands with multiple queries, this exposes the number of rows affected on + a statement-by-statement basis, unlike + which exposes an aggregation across all statements. + + + + + Gets a value that indicates whether this DbDataReader contains one or more rows. + + + + + Indicates whether the reader is currently positioned on a row, i.e. whether reading a + column is possible. + This property is different from in that will + return true even if attempting to read a column will fail, e.g. before + has been called + + + + + Gets the name of the column, given the zero-based column ordinal. + + The zero-based column ordinal. + The name of the specified column. + + + + Gets the number of columns in the current row. + + + + + Consumes all result sets for this reader, leaving the connector ready for sending and processing further + queries + + + + + Releases the resources used by the . + + + + + Releases the resources used by the . + + + + + Closes the reader, allowing a new command to be executed. + + + + + Closes the reader, allowing a new command to be executed. + + + + + Gets the value of the specified column as a Boolean. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a byte. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single character. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 16-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 32-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a 64-bit signed integer. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a object. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a double-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a single-precision floating point number. + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a globally-unique identifier (GUID). + + The zero-based column ordinal. + The value of the specified column. + + + + Populates an array of objects with the column values of the current row. + + An array of Object into which to copy the attribute columns. + The number of instances of in the array. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as a TimeSpan, + + + PostgreSQL's interval type has has a resolution of 1 microsecond and ranges from + -178000000 to 178000000 years, while .NET's TimeSpan has a resolution of 100 nanoseconds + and ranges from roughly -29247 to 29247 years. + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + The zero-based column ordinal. + The value of the specified column. + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + Currently only supported in non-sequential mode. + + The zero-based column ordinal. + A data reader. + + + + Reads a stream of bytes from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of bytes read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Reads a stream of characters from the specified column, starting at location indicated by dataOffset, into the buffer, starting at the location indicated by bufferOffset. + + The zero-based column ordinal. + The index within the row from which to begin the read operation. + The buffer into which to copy the data. + The index with the buffer to which the data will be copied. + The maximum number of characters to read. + The actual number of characters read. + + + + Retrieves data as a . + + The zero-based column ordinal. + The returned object. + + + + Retrieves data as a . + + The zero-based column ordinal. + + An optional token to cancel the asynchronous operation. The default value is . + + The returned object. + + + + Asynchronously gets the value of the specified column as a type. + + The type of the value to be returned. + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Synchronously gets the value of the specified column as a type. + + Synchronously gets the value of the specified column as a type. + The column to be retrieved. + The column to be retrieved. + + + + Gets the value of the specified column as an instance of . + + The zero-based column ordinal. + The value of the specified column. + + + + Gets the value of the specified column as an instance of . + + The name of the column. + The value of the specified column. + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + The zero-based column ordinal. + true if the specified column is equivalent to ; otherwise false. + + + + An asynchronous version of , which gets a value that indicates whether the column contains non-existent or missing values. + The parameter is currently ignored. + + The zero-based column to be retrieved. + + An optional token to cancel the asynchronous operation. The default value is . + + true if the specified column value is equivalent to otherwise false. + + + + Gets the column ordinal given the name of the column. + + The name of the column. + The zero-based column ordinal. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + The zero-based column index. + + + + Gets the data type information for the specified field. + This is the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + The zero-based column index. + + + + Gets the OID for the PostgreSQL type for the specified field, as it appears in the pg_type table. + + + This is a PostgreSQL-internal value that should not be relied upon and should only be used for + debugging purposes. + + The zero-based column index. + + + + Gets the data type of the specified column. + + The zero-based column ordinal. + The data type of the specified column. + + + + Returns an that can be used to iterate through the rows in the data reader. + + An that can be used to iterate through the rows in the data reader. + + + + Returns schema information for the columns in the current resultset. + + + + + + Asynchronously returns schema information for the columns in the current resultset. + + + + + + Returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Asynchronously returns a System.Data.DataTable that describes the column metadata of the DataReader. + + + + + Seeks to the given column. The 4-byte length is read and returned. + + + + + Checks that we have a RowDescription, but not necessary an actual resultset + (for operations which work in SchemaOnly mode. + + + + + Unbinds reader from the connector. + Should be called before the connector is returned to the pool. + + + + + + + + + + + Contains the connection string returned to the user from + after the connection has been opened. Does not contain the password unless Persist Security Info=true. + + + + + Information about PostgreSQL and PostgreSQL-like databases (e.g. type definitions, capabilities...). + + + + + Semaphore to ensure we don't perform type loading and mapping setup concurrently for this data source. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a command ready for use against this . + + An optional SQL for the command. + + + + Creates a batch ready for use against this . + + + + + Creates a new for the given . + + + + + Creates a new for the given . + + + + + Manually sets the password to be used the next time a physical connection is opened. + Consider using instead. + + + + + + + + + + + + + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + Constructs a new , optionally starting out from the given . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + The exception that is thrown when server-related issues occur. + + + PostgreSQL errors (e.g. query SQL issues, constraint violations) are raised via + which is a subclass of this class. + Purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ArgumentException). + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class with a specified error message. + + The message that describes the error. + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error or a timeout). + + + + + If the exception was thrown as a result of executing a , references the within + the batch which triggered the exception. Otherwise . + + + + + Initializes a new instance of the class with serialized data. + + The SerializationInfo that holds the serialized object data about the exception being thrown. + The StreamingContext that contains contextual information about the source or destination. + + + + A factory to create instances of various Npgsql objects. + + + + + Gets an instance of the . + This can be used to retrieve strongly typed data objects. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Returns a strongly typed instance. + + + + + Specifies whether the specific supports the class. + + + + + Specifies whether the specific supports the class. + + + + + Gets the service object of the specified type. + + An object that specifies the type of service object to get. + A service object of type serviceType, or null if there is no service object of type serviceType. + + + + Large object manager. This class can be used to store very large files in a PostgreSQL database. + + + + + The largest chunk size (in bytes) read and write operations will read/write each roundtrip to the network. Default 4 MB. + + + + + Creates an NpgsqlLargeObjectManager for this connection. The connection must be opened to perform remote operations. + + + + + + Execute a function + + + + + Execute a function that returns a byte array + + + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + The oid for the large object created + If an oid is already in use + + + + Create an empty large object in the database. If an oid is specified but is already in use, an PostgresException will be thrown. + + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + The oid for the large object created + If an oid is already in use + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + A transaction snapshot is taken by the backend when the object is opened with only read permissions. + When reading from this object, the contents reflects the time when the snapshot was taken. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + An NpgsqlLargeObjectStream + + + + Opens a large object on the backend, returning a stream controlling this remote object. + Note that this method, as well as operations on the stream must be wrapped inside a transaction. + + Oid of the object + + An optional token to cancel the asynchronous operation. The default value is . + + An NpgsqlLargeObjectStream + + + + Deletes a large object on the backend. + + Oid of the object to delete + + + + Deletes a large object on the backend. + + Oid of the object to delete + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + + + Exports a large object stored in the database to a file on the backend. This requires superuser permissions. + + Oid of the object to export + Path to write the file on the backend + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + + + Imports a large object to be stored as a large object in the database from a file stored on the backend. This requires superuser permissions. + + Path to read the file on the backend + A preferred oid, or specify 0 if one should be automatically assigned + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + An interface to remotely control the seekable stream for an opened large object on a PostgreSQL server. + Note that the OpenRead/OpenReadWrite method as well as all operations performed on this stream must be wrapped inside a database transaction. + + + + + Since PostgreSQL 9.3, large objects larger than 2GB can be handled, up to 4TB. + This property returns true whether the PostgreSQL version is >= 9.3. + + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + How many bytes actually read, or 0 if end of file was already reached. + + + + Reads count bytes from the large object. The only case when fewer bytes are read is when end of stream is reached. + + The buffer where read data should be stored. + The offset in the buffer where the first byte should be read. + The maximum number of bytes that should be read. + + An optional token to cancel the asynchronous operation. The default value is . + + How many bytes actually read, or 0 if end of file was already reached. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + + + Writes count bytes to the large object. + + The buffer to write data from. + The offset in the buffer at which to begin copying bytes. + The number of bytes to write. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + CanTimeout always returns false. + + + + + CanRead always returns true, unless the stream has been closed. + + + + + CanWrite returns true if the stream was opened with write permissions, and the stream has not been closed. + + + + + CanSeek always returns true, unless the stream has been closed. + + + + + Returns the current position in the stream. Getting the current position does not need a round-trip to the server, however setting the current position does. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + + + Gets the length of the large object. This internally seeks to the end of the stream to retrieve the length, and then back again. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + + + + Seeks in the stream to the specified position. This requires a round-trip to the backend. + + A byte offset relative to the origin parameter. + A value of type SeekOrigin indicating the reference point used to obtain the new position. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Does nothing. + + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + + + Truncates or enlarges the large object to the given size. If enlarging, the large object is extended with null bytes. + For PostgreSQL versions earlier than 9.3, the value must fit in an Int32. + + Number of bytes to either truncate or enlarge the large object. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases resources at the backend allocated for this stream. + + + + + Releases resources at the backend allocated for this stream, iff disposing is true. + + Whether to release resources allocated at the backend. + + + + Configures Npgsql logging + + + + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to false. + + + + + + Globally initializes Npgsql logging to use the provided . + Must be called before any Npgsql APIs are used. + + + This is a legacy-only, backwards compatibility API. New applications should set the logger factory on + and use the resulting instead. + + + The logging factory to use when logging from Npgsql. + + Determines whether parameter contents will be logged alongside SQL statements - this may reveal sensitive information. + Defaults to . + + + + + An which manages connections for multiple hosts, is aware of their states (primary, secondary, + offline...) and can perform failover and load balancing across them. + + + See . + + + + + Returns a new, unopened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + + + Returns a new, opened connection from this data source. + + Specifies the server type (e.g. primary, standby). + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Returns an that wraps this multi-host one with the given server type. + + Specifies the server type (e.g. primary, standby). + + + + Clears the database state (primary, secondary, offline...) for all data sources managed by this multi-host data source. + Can be useful to make Npgsql retry a PostgreSQL instance which was previously detected to be offline. + + + + + Reads a forward-only stream of rows from a nested data source. + Can be retrieved using or + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a nested data reader for the requested column. + The column type must be a record or a to Npgsql known composite type, or an array thereof. + + The zero-based column ordinal. + A data reader. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides information on a PostgreSQL notification. Notifications are sent when your connection has registered for + notifications on a specific channel via the LISTEN command. NOTIFY can be used to generate such notifications, + allowing for an inter-connection communication channel. + + + + + Process ID of the PostgreSQL backend that sent this notification. + + + + + The channel on which the notification was sent. + + + + + An optional payload string that was sent with this notification. + + + + + Thrown when trying to use a connection that is already busy performing some other operation. + Provides information on the already-executing operation to help with debugging. + + + + + Creates a new instance of . + + + A command which was in progress when the operation which triggered this exception was executed. + + + + + If the connection is busy with another command, this will contain a reference to that command. + Otherwise, if the connection if busy with another type of operation (e.g. COPY), contains + . + + + + + This class represents a parameter to a command that will be sent to server + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the parameter name and a value. + + The name of the parameter to map. + The value of the . + +

+ When you specify an in the value parameter, the is + inferred from the CLR type. +

+

+ When using this constructor, you must be aware of a possible misuse of the constructor which takes a + parameter. This happens when calling this constructor passing an int 0 and the compiler thinks you are passing a value of + . Use for example to have compiler calling the correct constructor. +

+
+
+ + + Initializes a new instance of the class with the parameter name and the data type. + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + + + + Initializes a new instance of the + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Initializes a new instance of the . + + The name of the parameter to map. + One of the values. + The length of the parameter. + The name of the source column. + One of the values. + + if the value of the field can be , otherwise . + + + The total number of digits to the left and right of the decimal point to which is resolved. + + The total number of decimal places to which is resolved. + One of the values. + An that is the value of the . + + + + Gets or sets The name of the . + + The name of the . + The default is an empty string. + + + + + + + Gets or sets the value of the parameter. + + + An that is the value of the parameter. + The default value is . + + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Gets or sets the of the parameter. + + One of the values. The default is . + + + + Used to specify which PostgreSQL type will be sent to the database for this parameter. + + + + + + + + + + + Gets or sets the maximum number of digits used to represent the property. + + + The maximum number of digits used to represent the property. + The default value is 0, which indicates that the data provider sets the precision for . + + + + Gets or sets the number of decimal places to which is resolved. + + The number of decimal places to which is resolved. The default is 0. + + + + + + + + + + + + + + + + The collection to which this parameter belongs, if any. + + + + + The PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This property is automatically set if parameters have been derived via + and can be used to + acquire additional information about the parameters' data type. + + + + Attempt to resolve a type info based on available (postgres) type information on the parameter. + + + Bind the current value to the type info, truncate (if applicable), take its size, and do any final validation before writing. + + + + + + + Creates a new that is a copy of the current instance. + + A new that is a copy of this instance. + + + + Represents a collection of parameters relevant to a as well as their respective mappings to columns in + a . + + + + + Initializes a new instance of the NpgsqlParameterCollection class. + + + + + Gets the with the specified name. + + The name of the to retrieve. + + The with the specified name, or a reference if the parameter is not found. + + + + + Gets the at the specified index. + + The zero-based index of the to retrieve. + The at the specified index. + + + + Adds the specified object to the . + + The to add to the collection. + The index of the new object. + + + + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name, + data type and value. + + The name of the . + One of the NpgsqlDbType values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The parameter that was added. + + + + Adds a to the given the specified parameter name and + value. + + The name of the . + The value of the to add to the collection. + One of the values. + The length of the column. + The name of the source column. + The parameter that was added. + + + + Adds a to the given the specified value. + + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the specified data type and value. + + One of the values. + The value of the to add to the collection. + The parameter that was added. + + + + Adds a to the given the parameter name and the data type. + + The name of the parameter. + One of the values. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, + and the column length. + + The name of the parameter. + One of the values. + The length of the column. + The index of the new object. + + + + Adds a to the with the parameter name, the data type, the + column length, and the source column name. + + The name of the parameter. + One of the values. + The length of the column. + The name of the source column. + The index of the new object. + + + + + + + + + + + + + + + + Removes the specified from the collection using a specific index. + + The zero-based index of the parameter. + + + + + + + Removes the specified from the collection. + + The name of the to remove from the collection. + + + + Removes the specified from the collection. + + The to remove from the collection. + + + + + + + Gets a value indicating whether a with the specified parameter name exists in the collection. + + The name of the object to find. + + A reference to the requested parameter is returned in this out param if it is found in the list. + This value is if the parameter is not found. + + + if the collection contains the parameter and param will contain the parameter; + otherwise, . + + + + + Removes all items from the collection. + + + + + + + + + + + + + + + + + Gets the number of objects in the collection. + + The number of objects in the collection. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Report the offset within the collection of the given parameter. + + Parameter to find. + Index of the parameter, or -1 if the parameter is not present. + + + + Insert the specified parameter into the collection. + + Index of the existing parameter before which to insert the new one. + Parameter to insert. + + + + Report whether the specified parameter is present in the collection. + + Parameter to find. + True if the parameter was found, otherwise false. + + + + Remove the specified parameter from the collection. + + Parameter to remove. + True if the parameter was found and removed, otherwise false. + + + + Convert collection to a System.Array. + + Destination array. + Starting index in destination array. + + + + Convert collection to a System.Array. + + NpgsqlParameter[] + + + + The parameter collection includes no parameters. + + + + + The parameter collection includes only named parameters. + + + + + The parameter collection includes only positional parameters. + + + + + The parameter collection includes both named and positional parameters. + This is only supported when is set to . + + + + + A generic version of which provides more type safety and + avoids boxing of value types. Use instead of . + + The type of the value that will be stored in the parameter. + + + + Gets or sets the strongly-typed value of the parameter. + + + + + Gets or sets the value of the parameter. This delegates to . + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with a parameter name and value. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Initializes a new instance of with a parameter name and type. + + + + + Provides an API for a raw binary COPY operation, a high-performance data import/export mechanism to + a PostgreSQL table. Initiated by + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + The copy binary format header signature + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing operation. Any data already written will be discarded. + + + + + Writer for a text import, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Cancels and terminates an ongoing import. Any data already written will be discarded. + + + + + Reader for a text export, initiated by . + + + See https://www.postgresql.org/docs/current/static/sql-copy.html. + + + + + Cancels and terminates an ongoing export. + + + + + Asynchronously cancels and terminates an ongoing export. + + + + + Provides the underlying mechanism for reading schema information. + + + + + Returns the MetaDataCollections that lists all possible collections. + + The MetaDataCollections + + + + Returns the Restrictions that contains the meaning and position of the values in the restrictions array. + + The Restrictions + + + + Populates some generic type information that is common for base types, arrays, enums, etc. Some will + be overridden later. + + + + + Sets some custom, hardcoded info on a DataType row that cannot be loaded/inferred from PostgreSQL + + + + + List of keywords taken from PostgreSQL 9.0 reserved words documentation. + + + + + Provides a simple API for configuring and creating an , from which database connections can be obtained. + + + On this builder, various features are disabled by default; unless you're looking to save on code size (e.g. when publishing with + NativeAOT), use instead. + + + + + A connection string builder that can be used to configured the connection string on the builder. + + + + + Returns the connection string, as currently configured on the builder. + + + + + A diagnostics name used by Npgsql when generating tracing, logging and metrics. + + + + + Constructs a new , optionally starting out from the given + . + + + + + Sets the that will be used for logging. + + The logger factory to be used. + The same builder instance so that multiple calls can be chained. + + + + Enables parameters to be included in logging. This includes potentially sensitive information from data sent to PostgreSQL. + You should only enable this flag in development, or if you have the appropriate security measures in place based on the + sensitivity of this data. + + If , then sensitive data is logged. + The same builder instance so that multiple calls can be chained. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + When using SSL/TLS, this is a callback that allows customizing how the PostgreSQL-provided certificate is verified. This is an + advanced API, consider using or instead. + + The callback containing custom callback verification logic. + + + Cannot be used in conjunction with , or + . + + + See . + + + The same builder instance so that multiple calls can be chained. + + + + Specifies an SSL/TLS certificate which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a collection of SSL/TLS certificates which Npgsql will send to PostgreSQL for certificate-based authentication. + + The client certificate collection to be sent to PostgreSQL when opening a connection. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback to modify the collection of SSL/TLS client certificates which Npgsql will send to PostgreSQL for + certificate-based authentication. This is an advanced API, consider using or + instead. + + The callback to modify the client certificate collection. + + + The callback is invoked every time a physical connection is opened, and is therefore suitable for rotating short-lived client + certificates. Simply make sure the certificate collection argument has the up-to-date certificate(s). + + + The callback's collection argument already includes any client certificates specified via the connection string or environment + variables. + + + The same builder instance so that multiple calls can be chained. + + + + Sets the that will be used validate SSL certificate, received from the server. + + The CA certificate. + The same builder instance so that multiple calls can be chained. + + + + Specifies a callback that will be used to validate SSL certificate, received from the server. + + The callback to get CA certificate. + The same builder instance so that multiple calls can be chained. + + This overload, which accepts a callback, is suitable for scenarios where the certificate rotates + and might change during the lifetime of the application. + When that's not the case, use the overload which directly accepts the certificate. + + The same builder instance so that multiple calls can be chained. + + + + Configures a periodic password provider, which is automatically called by the data source at some regular interval. This is the + recommended way to fetch a rotating access token. + + A callback which returns the password to be sent to PostgreSQL. + How long to cache the password before re-invoking the callback. + + If a password refresh attempt fails, it will be re-attempted with this interval. + This should typically be much lower than . + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked in a timer, and not when opening connections. It therefore doesn't affect opening time. + + + The provided cancellation token is only triggered when the entire data source is disposed. If you'd like to apply a timeout to the + token fetching, do so within the provided callback. + + + The same builder instance so that multiple calls can be chained. + + + + Configures a password provider, which is called by the data source when opening connections. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + + A callback that may be invoked during which returns the password to be sent to PostgreSQL. + + The same builder instance so that multiple calls can be chained. + + + The provided callback is invoked when opening connections. Therefore its important the callback internally depends on cached + data or returns quickly otherwise. Any unnecessary delay will affect connection opening time. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Sets up mappings for the PostgreSQL array types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL range types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL record type as a .NET object[]. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL tsquery and tsvector types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for the PostgreSQL ltree extension types. + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings for extra conversions from PostgreSQL to .NET types. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use TLS/SSl encryption for connections to PostgreSQL. This does not guarantee that encryption will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Enables the possibility to use GSS/SSPI authentication for connections to PostgreSQL. This does not guarantee that it will + actually be used; see for more details. + + The same builder instance so that multiple calls can be chained. + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Register a connection initializer, which allows executing arbitrary commands when a physical database connection is first opened. + + + A synchronous connection initialization lambda, which will be called from when a new physical + connection is opened. + + + An asynchronous connection initialization lambda, which will be called from + when a new physical connection is opened. + + + If an initializer is registered, both sync and async versions must be provided. If you do not use sync APIs in your code, simply + throw , which would also catch accidental cases of sync opening. + + + Take care that the setting you apply in the initializer does not get reverted when the connection is returned to the pool, since + Npgsql sends DISCARD ALL by default. The option can be used to + turn this off. + + The same builder instance so that multiple calls can be chained. + + + + Builds and returns an which is ready for use. + + + + + Builds and returns a which is ready for use for load-balancing and failover scenarios. + + + + + Options to configure Npgsql's support for OpenTelemetry tracing. + Currently no options are available. + + + + + Represents a transaction to be made in a PostgreSQL database. This class cannot be inherited. + + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + Specifies the object associated with the transaction. + + The object associated with the transaction. + + + + If true, the transaction has been committed/rolled back, but not disposed. + + + + + Specifies the isolation level for this transaction. + + The isolation level for this transaction. The default is . + + + + Commits the database transaction. + + + + + Commits the database transaction. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Rolls back a transaction from a pending state. + + + + + Rolls back a transaction from a pending state. + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Creates a transaction save point. + + The name of the savepoint. + + This method does not cause a database roundtrip to be made. The savepoint creation statement will instead be sent along with + the next command. + + + + + Creates a transaction save point. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + This method does not cause a database roundtrip to be made, and will therefore always complete synchronously. + The savepoint creation statement will instead be sent along with the next command. + + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Rolls back a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + + + Releases a transaction from a pending savepoint state. + + The name of the savepoint. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + Indicates whether this transaction supports database savepoints. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, rolling it back if it is still pending. + + + + + Disposes the transaction, without rolling back. Used only in special circumstances, e.g. when + the connection is broken. + + + + + Unbinds transaction from the connector. + Should be called before the connector is returned to the pool. + + + + + Represents a .pgpass file, which contains passwords for noninteractive connections + + + + + File name being parsed for credentials + + + + + Initializes a new instance of the class + + + + + + Parses file content and gets all credentials from the file + + corresponding to all lines in the .pgpass file + + + + Searches queries loaded from .PGPASS file to find first entry matching the provided parameters. + + Hostname to query. Use null to match any. + Port to query. Use null to match any. + Database to query. Use null to match any. + User name to query. Use null to match any. + Matching if match was found. Otherwise, returns null. + + + + Represents a hostname, port, database, username, and password combination that has been retrieved from a .pgpass file + + + + + Hostname parsed from the .pgpass file + + + + + Port parsed from the .pgpass file + + + + + Database parsed from the .pgpass file + + + + + User name parsed from the .pgpass file + + + + + Password parsed from the .pgpass file + + + + + This class represents an entry from the .pgpass file + + Hostname parsed from the .pgpass file + Port parsed from the .pgpass file + Database parsed from the .pgpass file + User name parsed from the .pgpass file + Password parsed from the .pgpass file + + + + Creates new based on string in the format hostname:port:database:username:password. The : and \ characters should be escaped with a \. + + string for the entry from the pgpass file + New instance of for the string + Entry is not formatted as hostname:port:database:username:password or non-wildcard port is not a number + + + + Checks whether this matches the parameters supplied + + Hostname to check against this entry + Port to check against this entry + Database to check against this entry + Username to check against this entry + True if the entry is a match. False otherwise. + + + + Checks if 2 strings are a match for a considering that either value can be a wildcard (*) + + Value being searched + Value from the PGPASS entry + True if the values are a match. False otherwise. + + + + Tracks all connectors currently managed by this pool, whether idle or busy. + Only updated rarely - when physical connections are opened/closed - but is read in perf-sensitive contexts. + + + + + Reader side for the idle connector channel. Contains nulls in order to release waiting attempts after + a connector has been physically closed/broken. + + + + + Incremented every time this pool is cleared via or + . Allows us to identify connections which were + created before the clear. + + + + + Provides lookup for a pool based on a connection string. + + + Note that pools created directly as are referenced directly by users, and aren't managed here. + + + + + Resets the pool manager to its initial state, for test purposes only. + Assumes that no other threads are accessing the pool. + + + + + The default implementation of , for standard PostgreSQL databases.. + + + + + + + + The default implementation of NpgsqlDatabase, for standard PostgreSQL databases. + + + + + The PostgreSQL types detected in the database. + + + + + + + + The PostgreSQL version string as returned by the version() function. Populated during loading. + + + + + True if the backend is Amazon Redshift; otherwise, false. + + + + + + + + True if the 'pg_enum' table includes the 'enumsortorder' column; otherwise, false. + + + + + True if the 'pg_type' table includes the 'typcategory' column; otherwise, false. + + + pg_type.typcategory is added after 8.4. + see: https://www.postgresql.org/docs/8.4/static/catalog-pg-type.html#CATALOG-TYPCATEGORY-TABLE + + + + + Loads database information from the PostgreSQL database specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A task representing the asynchronous operation. + + + + + Generates a raw SQL query string to select type information. + + + Select all types (base, array which is also base, enum, range, composite). + Note that arrays are distinguished from primitive types through them having typreceive=array_recv. + Order by primitives first, container later. + For arrays and ranges, join in the element OID and type (to filter out arrays of unhandled + types). + + + + + Loads type information from the backend specified by . + + The database connection. + The timeout while loading types from the backend. + True to load types asynchronously. + + A collection of types loaded from the backend. + + + Unknown typtype for type '{internalName}' in pg_type: {typeChar}. + + + + Provides constants for PostgreSQL error codes. + + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The exception that is thrown when the PostgreSQL backend reports errors (e.g. query + SQL issues, constraint violations). + + + This exception only corresponds to a PostgreSQL-delivered error. + Other errors (e.g. network issues) will be raised via , + and purely Npgsql-related issues which aren't related to the server will be raised + via the standard CLR exceptions (e.g. ). + + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html, + https://www.postgresql.org/docs/current/static/protocol-error-fields.html + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Populates a with the data needed to serialize the target object. + + The to populate with data. + The destination (see ) for this serialization. + + + + + + + Specifies whether the exception is considered transient, that is, whether retrying the operation could + succeed (e.g. a network error). Check . + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + Constants are defined in . + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + PostgreSQL notices are non-critical messages generated by PostgreSQL, either as a result of a user query + (e.g. as a warning or informational notice), or due to outside activity (e.g. if the database administrator + initiates a "fast" database shutdown). + + + https://www.postgresql.org/docs/current/static/protocol-flow.html#PROTOCOL-ASYNC + + + + + Severity of the error or notice. + Always present. + + + + + Severity of the error or notice, not localized. + Always present since PostgreSQL 9.6. + + + + + The SQLSTATE code for the error. + + + Always present. + See https://www.postgresql.org/docs/current/static/errcodes-appendix.html + + + + + The primary human-readable error message. This should be accurate but terse. + + + Always present. + + + + + An optional secondary error message carrying more detail about the problem. + May run to multiple lines. + + + + + An optional suggestion what to do about the problem. + This is intended to differ from Detail in that it offers advice (potentially inappropriate) rather than hard facts. + May run to multiple lines. + + + + + The field value is a decimal ASCII integer, indicating an error cursor position as an index into the original query string. + The first character has index 1, and positions are measured in characters not bytes. + 0 means not provided. + + + + + This is defined the same as the field, but it is used when the cursor position refers to an internally generated command rather than the one submitted by the client. + The field will always appear when this field appears. + 0 means not provided. + + + + + The text of a failed internally-generated command. + This could be, for example, a SQL query issued by a PL/pgSQL function. + + + + + An indication of the context in which the error occurred. + Presently this includes a call stack traceback of active PL functions. + The trace is one entry per line, most recent first. + + + + + If the error was associated with a specific database object, the name of the schema containing that object, if any. + + PostgreSQL 9.3 and up. + + + + Table name: if the error was associated with a specific table, the name of the table. + (Refer to the schema name field for the name of the table's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific table column, the name of the column. + (Refer to the schema and table name fields to identify the table.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific data type, the name of the data type. + (Refer to the schema name field for the name of the data type's schema.) + + PostgreSQL 9.3 and up. + + + + If the error was associated with a specific constraint, the name of the constraint. + Refer to fields listed above for the associated table or domain. + (For this purpose, indexes are treated as constraints, even if they weren't created with constraint syntax.) + + PostgreSQL 9.3 and up. + + + + The file name of the source-code location where the error was reported. + + PostgreSQL 9.3 and up. + + + + The line number of the source-code location where the error was reported. + + + + + The name of the source-code routine reporting the error. + + + + + Creates a new instance. + + + + + Creates a new instance. + + + + + Provides data for a PostgreSQL notice event. + + + + + The Notice that was sent from the database. + + + + + Represents a PostgreSQL array data type, which can hold several multiple values in a single column. + + + See https://www.postgresql.org/docs/current/static/arrays.html. + + + + + The PostgreSQL data type of the element contained within this array. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + + + + Represents a PostgreSQL base data type, which is a simple scalar value. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + Constructs a representation of a PostgreSQL base data type. + + + + + + + + Represents a PostgreSQL composite data type, which can hold multiple fields of varying types in a single column. + + + See https://www.postgresql.org/docs/current/static/rowtypes.html. + + + + + Holds the name and types for all fields. + + + + + Constructs a representation of a PostgreSQL array data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a field in a PostgreSQL composite data type. + + + + + The name of the composite field. + + + + + The type of the composite field. + + + + + + + + Represents a PostgreSQL domain type. + + + See https://www.postgresql.org/docs/current/static/sql-createdomain.html. + + When PostgreSQL returns a RowDescription for a domain type, the type OID is the base type's + (so fetching a domain type over text returns a RowDescription for text). + However, when a composite type is returned, the type OID there is that of the domain, + so we provide "clean" support for domain types. + + + + + The PostgreSQL data type of the base type, i.e. the type this domain is based on. + + + + + True if the domain has a NOT NULL constraint, otherwise false. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Constructs a representation of a PostgreSQL domain data type. + + + + + Represents a PostgreSQL enum data type. + + + See https://www.postgresql.org/docs/current/static/datatype-enum.html. + + + + + The enum's fields. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Constructs a representation of a PostgreSQL enum data type. + + + + + Represents a PostgreSQL multirange data type. + + +

See https://www.postgresql.org/docs/current/static/rangetypes.html.

+

Multirange types were introduced in PostgreSQL 14.

+
+
+ + + The PostgreSQL data type of the range of this multirange. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Constructs a representation of a PostgreSQL multirange data type. + + + + + Represents a PostgreSQL range data type. + + + See https://www.postgresql.org/docs/current/static/rangetypes.html. + + + + + The PostgreSQL data type of the subtype of this range. + + + + + The PostgreSQL data type of the multirange of this range. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Constructs a representation of a PostgreSQL range data type. + + + + + Represents a PostgreSQL data type, such as int4 or text, as discovered from pg_type. + This class is abstract, see derived classes for concrete types of PostgreSQL types. + + + Instances of this class are shared between connections to the same databases. + For more info about what this class and its subclasses represent, see + https://www.postgresql.org/docs/current/static/catalog-pg-type.html. + + + + + Constructs a representation of a PostgreSQL data type. + + The data type's namespace (or schema). + The data type's name. + The data type's OID. + + + + Constructs a representation of a PostgreSQL data type. + + The data type's fully qualified name. + The data type's OID. + + + + The data type's OID - a unique id identifying the data type in a given database (in pg_type). + + + + + The data type's namespace (or schema). + + + + + The data type's name. + + + Note that this is the standard, user-displayable type name (e.g. integer[]) rather than the internal + PostgreSQL name as it is in pg_type (_int4). See for the latter. + + + + + The full name of the backend type, including its namespace. + + + + + A display name for this backend type, including the namespace unless it is pg_catalog (the namespace + for all built-in types). + + + + + The data type's internal PostgreSQL name (e.g. _int4 not integer[]). + See for a more user-friendly name. + + + + + If a PostgreSQL array type exists for this type, it will be referenced here. + Otherwise null. + + + + + If a PostgreSQL range type exists for this type, it will be referenced here. + Otherwise null. + + + + + Generates the type name including any facts (size, precision, scale), given the PostgreSQL type modifier. + + + + + Returns a string that represents the current object. + + + + Canonizes (nested) domain types to underlying types, does not handle composites. + + + A base type. + + + An enum carrying its variants. + + + A pseudo type like anyarray. + + + + Represents a PostgreSQL data type that isn't known to Npgsql and cannot be handled. + + + + + Constructs a the unknown backend type. + + + + + Internally represents a statement has been prepared, is in the process of being prepared, or is a + candidate for preparation (i.e. awaiting further usages). + + + + + If true, the user explicitly requested this statement be prepared. It does not get closed as part of + the automatic preparation LRU mechanism. + + + + + If this statement is about to be prepared, but replaces a previous statement which needs to be closed, + this holds the name of the previous statement. Otherwise null. + + + + + Contains the handler types for a prepared statement's parameters, for overloaded cases (same SQL, different param types) + Only populated after the statement has been prepared (i.e. null for candidates). + + + + + The state of a . + + + + + The statement hasn't been prepared yet, nor is it in the process of being prepared. + This is the value for autoprepare candidates which haven't been prepared yet, and is also + a temporary state during preparation. + + + + + The statement is in the process of being prepared. + + + + + The statement has been fully prepared and can be executed. + + + + + The statement is in the process of being unprepared. This is a temporary state that only occurs during + unprepare. Specifically, it means that a Close message for the statement has already been written + to the write buffer. + + + + + The statement has been unprepared and is no longer usable. + + + + + The statement was invalidated because e.g. table schema has changed since preparation. + + + + + Total number of current prepared statements (whether explicit or automatic). + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + + + This API is for internal use and for implementing logical replication plugins. + It is not meant to be consumed in common Npgsql usage scenarios. + + + Creates a new replication slot and returns information about the newly-created slot. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + The name of the output plugin used for logical decoding (see + + https://www.postgresql.org/docs/current/logicaldecoding-output-plugin.html). + + if this replication slot shall be temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + A to specify what to do with the + snapshot created during logical slot initialization. , which is + also the default, will export the snapshot for use in other sessions. This option can't be used inside a + transaction. will use the snapshot for the current transaction + executing the command. This option must be used in a transaction, and + must be the first command run in that transaction. Finally, will + just use the snapshot for logical decoding as normal but won't do anything else with it. + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a class that + can be used to initialize instances of subclasses. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + or at the slot's consistent point if isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + The collection of options passed to the slot's logical decoding plugin. + + Whether the plugin will be bypassing and reading directly from the buffer. + + A representing an that + can be used to stream WAL entries in form of instances. + + + + Contains information about a newly-created logical replication slot. + + + + + Creates a new logical replication slot + + The logical decoding output plugin to the corresponding replication slot was created for. + A struct with information to create the replication slot. + + + + The identifier of the snapshot exported by the command. + The snapshot is valid until a new command is executed on this connection or the replication connection is closed. + + + + + The name of the output plugin used by the newly-created logical replication slot. + + + + + The WAL location at which the slot became consistent. + This is the earliest location from which streaming can start on this replication slot. + + + + + Represents a logical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Decides what to do with the snapshot created during logical slot initialization. + + + + + Export the snapshot for use in other sessions. This is the default. + This option can't be used inside a transaction. + + + + + Use the snapshot for the current transaction executing the command. + This option must be used in a transaction, and CREATE_REPLICATION_SLOT must be the first command run + in that transaction. + + + + + Just use the snapshot for logical decoding as normal but don't do anything else with it. + + + + + Logical Replication Protocol begin message + + + + + The final LSN of the transaction. + + + + + Commit timestamp of the transaction. + The value is in number of microseconds since PostgreSQL epoch (2000-01-01). + + + + + Logical Replication Protocol begin prepare message + + + + + Logical Replication Protocol commit message + + + + + Flags; currently unused. + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit. + + + + + No flags. + + + + + Logical Replication Protocol commit prepared message + + + + + Flags for the commit prepared; currently unused. + + + + + The LSN of the commit prepared. + + + + + The end LSN of the commit prepared transaction. + + + + + Commit timestamp of the transaction. + + + + + Flags for the commit prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to DEFAULT. + + + + + Columns representing the new row. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY REPLICA IDENTITY set to FULL. + + + + + Columns representing the deleted row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to FULL. + + + + + Columns representing the old row. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol update message for tables with REPLICA IDENTITY set to USING INDEX. + + + + + Columns representing the key. + + + + + Columns representing the new row. + + + + + Logical Replication Protocol insert message + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Logical Replication Protocol delete message for tables with REPLICA IDENTITY set to DEFAULT or USING INDEX. + + + + + Columns representing the key. + + + + + Logical Replication Protocol logical decoding message + + + + + Flags; Either 0 for no flags or 1 if the logical decoding message is transactional. + + + + + The LSN of the logical decoding message. + + + + + The prefix of the logical decoding message. + + + + + The content of the logical decoding message. + + + + + Logical Replication Protocol origin message + + + + + The LSN of the commit on the origin server. + + + + + Name of the origin. + + + + + The base class of all Logical Replication Protocol Messages + + + See https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html for details about the + protocol. + + + + + + + + Abstract base class for Logical Replication Protocol prepare and begin prepare message + + + + + The user defined GID of the two-phase transaction. + + + + + Logical Replication Protocol prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Abstract base class for the logical replication protocol begin prepare and prepare message + + + + + The LSN of the prepare. + + + + + The end LSN of the prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Logical Replication Protocol relation message + + + + + ID of the relation. + + + + + Namespace (empty string for pg_catalog). + + + + + Relation name. + + + + + Replica identity setting for the relation (same as relreplident in pg_class): + columns used to form “replica identity” for rows. + + + + + Relation columns + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Flags for the column. + + + + + No flags. + + + + + Marks the column as part of the key. + + + + + Replica identity setting for the relation (same as relreplident in pg_class). + + + See + + + + + Default (primary key, if any). + + + + + Nothing. + + + + + All columns. + + + + + Index with indisreplident set (same as nothing if the index used has been dropped) + + + + + Represents a column in a Logical Replication Protocol relation message + + + + + Flags for the column. Currently can be either 0 for no flags or 1 which marks the column as part of the key. + + + + + Name of the column. + + + + + ID of the column's data type. + + + + + Type modifier of the column (atttypmod). + + + + + Logical Replication Protocol rollback prepared message + + + + + Flags for the rollback prepared; currently unused. + + + + + The end LSN of the prepared transaction. + + + + + The end LSN of the rollback prepared transaction. + + + + + Prepare timestamp of the transaction. + + + + + Rollback timestamp of the transaction. + + + + + Flags for the rollback prepared; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream abort message + + + + + Xid of the subtransaction (will be same as xid of the transaction for top-level transactions). + + + + + Logical Replication Protocol stream commit message + + + + + Flags; currently unused (must be 0). + + + + + The LSN of the commit. + + + + + The end LSN of the transaction. + + + + + Commit timestamp of the transaction. + + + + + Logical Replication Protocol stream prepare message + + + + + Flags for the prepare; currently unused. + + + + + Flags for the prepare; currently unused. + + + + + No flags. + + + + + Logical Replication Protocol stream start message + + + + + A value of 1 indicates this is the first stream segment for this XID, 0 for any other stream segment. + + + + + Logical Replication Protocol stream stop message + + + + + The common base class for all streaming replication messages that can be part of a streaming transaction (protocol V2) + + + + + Xid of the transaction (only present for streamed transactions). + + + + + The common base class for all replication messages that set the transaction xid of a transaction + + + + + Xid of the transaction. + + + + + Logical Replication Protocol truncate message + + + + + Option flags for TRUNCATE + + + + + The relations being truncated. + + + + + Enum representing the additional options for the TRUNCATE command as flags + + + + + No additional option was specified + + + + + CASCADE was specified + + + + + RESTART IDENTITY was specified + + + + + Logical Replication Protocol type message + + + + + ID of the data type. + + + + + Namespace (empty string for pg_catalog). + + + + + Name of the data type. + + + + + Abstract base class for Logical Replication Protocol delete message types. + + + + + The relation for this . + + + + + Columns representing the new row. + + + + + Options to be passed to the pgoutput plugin + + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + Creates a new instance of . + + The publication names to include into the stream + The version of the logical streaming replication protocol + Send values in binary representation + Enable streaming of in-progress transactions + Write logical decoding messages into the replication stream + Enable streaming of prepared transactions + + + + The version of the Logical Streaming Replication Protocol + + + + + The publication names to stream + + + + + Send values in binary representation + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of in-progress transactions + + + This works as of logical streaming replication protocol version 2 (PostgreSQL 14+) + + + + + Write logical decoding messages into the replication stream + + + This works in PostgreSQL versions 14+ + + + + + Enable streaming of prepared transactions + + + This works in PostgreSQL versions 15+ + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot initialized for for the logical streaming replication protocol + (pgoutput logical decoding plugin). + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the pgoutput logical decoding plugin. + + The representing the existing replication slot + + + + Creates a new instance. + + + This constructor is intended to be consumed by plugins sitting on top of + + + The from which the new instance should be initialized + + + + Represents a streaming tuple containing . + + + + + The number of columns in the tuple. + + + + + + + + Represents a column value in a logical replication session. + + + + + The length of the value in bytes. + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Gets a value that indicates whether the column contains nonexistent or missing values. + + true if the specified column is equivalent to ; otherwise false. + + + + Gets a value that indicates whether the column contains an unchanged TOASTed value (the actual value is not sent). + + Whether the specified column is an unchanged TOASTed value. + + + + Gets a representation of the PostgreSQL data type for the specified field. + The returned representation can be used to access various information about the field. + + + + + Gets the data type information for the specified field. + This is be the PostgreSQL type name (e.g. double precision), not the .NET type + (see for that). + + + + + Gets the data type of the specified column. + + The data type of the specified column. + + + + Gets the value of the specified column as a type. + + The type of the value to be returned. + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Gets the value of the specified column as an instance of . + + + An optional token to cancel the asynchronous operation. The default value is . + + + + + + Retrieves data as a . + + + + + Retrieves data as a . + + + + + The kind of data transmitted for a tuple in a Logical Replication Protocol message. + + + + + Identifies the data as NULL value. + + + + + Identifies unchanged TOASTed value (the actual value is not sent). + + + + + Identifies the data as text formatted value. + + + + + Identifies the data as binary value. + + Added in PG14 + + + + Extension methods to use with the pg_output logical decoding plugin. + + + + + Creates a class that wraps a replication slot using the + "pgoutput" logical decoding plugin and can be used to start streaming replication via the logical + streaming replication protocol. + + + See https://www.postgresql.org/docs/current/protocol-logical-replication.html + and https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html + for more information. + + The to use for creating the replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start the Logical Streaming Replication Protocol (pgoutput logical decoding plugin), + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The collection of options passed to the slot's logical decoding plugin. + The token to monitor for stopping the replication. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a physical replication connection to a PostgreSQL server. + + + + + Initializes a new instance of . + + + + + Initializes a new instance of with the given connection string. + + The connection used to open the PostgreSQL database. + + + + Creates a that wraps a PostgreSQL physical replication slot and + can be used to start physical streaming replication + + + The name of the slot to create. Must be a valid replication slot name + (see Section 26.2.6.1). + + + if this replication slot shall be a temporary one; otherwise + . Temporary slots are not saved to disk and are automatically dropped on error or + when the session has finished. + + + If this is set to this physical replication slot reserves WAL immediately. Otherwise, + WAL is only reserved upon connection from a streaming replication client. + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a that represents the + newly-created replication slot. + + + + + Read some information associated to a replication slot. + + This command is currently only supported for physical replication slots. + + + + The name of the slot to read. Must be a valid replication slot name + + + An optional token to cancel the asynchronous operation. The default value is . + + A representing a or + if the replication slot does not exist. + + + + Instructs the server to start streaming the WAL for physical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for logical replication, starting at WAL location + . The server can reply with an error, for example if the requested + section of WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + The WAL location to begin streaming at. + The token to be used for stopping the replication. + Streaming starts on timeline tli. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Instructs the server to start streaming the WAL for physical replication, starting at the WAL location + and timeline id specified in . The server can reply with an error, for example + if the requested section of the WAL has already been recycled. + + + If the client requests a timeline that's not the latest but is part of the history of the server, the server + will stream all the WAL on that timeline starting from the requested start point up to the point where the + server switched to another timeline. + + + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The must contain a valid to be used for this overload. + + + The token to be used for stopping the replication. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Wraps a replication slot that uses physical replication. + + + + + Creates a new instance. + + + Create a instance with this constructor to wrap an existing PostgreSQL replication slot + that has been initialized for physical replication. + + The name of the existing replication slot + The replication slot's restart_lsn + The timeline ID associated to restart_lsn, following the current timeline history. + + + + The replication slot's restart_lsn. + + + + + The timeline ID associated to restart_lsn, following the current timeline history. + + + + + Defines the core behavior of replication connections and provides the base class for + and + . + + + + + Gets or sets the string used to connect to a PostgreSQL database. See the manual for details. + + + The connection string that includes the server name, the database name, and other parameters needed to establish the initial + connection. The default value is an empty string. + + + Since replication connections are a special kind of connection, + , , + and + are always disabled no matter what you set them to in your connection string. + + + + + The location of the last WAL byte + 1 received in the standby. + + + + + The location of the last WAL byte + 1 flushed to disk in the standby. + + + + + The location of the last WAL byte + 1 applied (e. g. written to disk) in the standby. + + + + + Send replies at least this often. + Timeout. disables automated replies. + + + + + Time that receiver waits for communication from master. + Timeout. disables the timeout. + + + + + The version of the PostgreSQL server we're connected to. + +

+ This can only be called when the connection is open. +

+

+ In case of a development or pre-release version this field will contain + the version of the next version to be released from this branch. +

+
+
+
+ + + The PostgreSQL server version as returned by the server_version option. + + This can only be called when the connection is open. + + + + + + Gets or sets the wait time before terminating the attempt to execute a command and generating an error. + + The time to wait for the command to execute. The default value is 30 seconds. + + + + The client encoding for the connection + This can only be called when there is an active connection. + + + + + Process id of backend server. + This can only be called when there is an active connection. + + + + + Opens a database replication connection with the property settings specified by the + . + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous open operation. + + + + Closes the replication connection and performs tasks associated + with freeing, releasing, or resetting its unmanaged resources asynchronously. + + A task that represents the asynchronous dispose operation. + + + + Requests the server to identify itself. + + + An optional token to cancel the asynchronous operation. The default value is . + + + A containing information about the system we are connected to. + + + + + Requests the server to send the current setting of a run-time parameter. + This is similar to the SQL command SHOW. + + The name of a run-time parameter. + Available parameters are documented in https://www.postgresql.org/docs/current/runtime-config.html. + + + An optional token to cancel the asynchronous operation. The default value is . + + The current setting of the run-time parameter specified in as . + + + + Requests the server to send over the timeline history file for timeline tli. + + The timeline for which the history file should be sent. + + An optional token to cancel the asynchronous operation. The default value is . + + The timeline history file for timeline tli + + + + Sets the current status of the replication as it is interpreted by the consuming client. The value supplied + in will be sent to the server via and + with the next status update. + + A status update which will happen upon server request, upon expiration of + our upon an enforced status update via , whichever happens first. + If you want the value you set here to be pushed to the server immediately (e. g. in synchronous replication scenarios), + call after calling this method. + + + + This is a convenience method setting both and in one operation. + You can use it if your application processes replication messages in a way that doesn't care about the difference between + writing a message and flushing it to a permanent storage medium. + + The location of the last WAL byte + 1 applied (e. g. processed or written to disk) and flushed to disk in the standby. + + + + Sends a forced status update to PostgreSQL with the current WAL tracking information. + + The connection currently isn't streaming + A Task representing the sending of the status update (and not any PostgreSQL response). + + + + Drops a replication slot, freeing any reserved server-side resources. + If the slot is a logical slot that was created in a database other than + the database the walsender is connected to, this command fails. + + The name of the slot to drop. + + causes the command to wait until the slot becomes + inactive if it currently is active instead of the default behavior of raising an error. + + + An optional token to cancel the asynchronous operation. The default value is . + + A task representing the asynchronous drop operation. + + + + The common base class for all streaming replication messages + + + + + The starting point of the WAL data in this message. + + + + + The current end of WAL on the server. + + + + + The server's system clock at the time this message was transmitted, as microseconds since midnight on 2000-01-01. + + + Since the client using Npgsql and the server may be located in different time zones, + as of Npgsql 7.0 this value is no longer converted to local time but keeps its original value in UTC. + You can check if you don't want to introduce behavior depending on Npgsql versions. + + + + + Contains information about a newly-created replication slot. + + + + + The name of the newly-created replication slot. + + + + + Contains information about a replication slot. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + Creates a new instance. + + + The name of the replication slot. + + + The WAL location at which the slot became consistent. + + + + + The name of the replication slot. + + + + + The WAL location at which the slot became consistent. + + + + + The identifier of the snapshot exported by the CREATE_REPLICATION_SLOT command. + + + + + Contains server identification information returned from . + + + + + The unique system identifier identifying the cluster. + This can be used to check that the base backup used to initialize the standby came from the same cluster. + + + + + Current timeline ID. Also useful to check that the standby is consistent with the master. + + + + + Current WAL flush location. Useful to get a known location in the write-ahead log where streaming can start. + + + + + Database connected to. + + + + + Text representations of PostgreSQL WAL operations decoded by the "test_decoding" plugin. See + https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Decoded text representation of the operation performed in this WAL entry + + + + + + + + Returns a clone of this message, which can be accessed after other replication messages have been retrieved. + + + + + Options to be passed to the test_decoding plugin + + + + + Creates a new instance of . + + Include the transaction number for BEGIN and COMMIT command output + Include the timestamp for COMMIT command output + Set the output mode to binary + Skip output for transactions that didn't change the database + Only output data that don't have the replication origin set + Include output from table rewrites that were caused by DDL statements + Enable streaming output + + + + Include the transaction number for BEGIN and COMMIT command output + + + + + Include the timestamp for COMMIT command output + + + + + Set the output mode to binary + + + + + Skip output for transactions that didn't change the database + + + + + Only output data that don't have the replication origin set + + + + + Include output from table rewrites that were caused by DDL statements + + + + + Enable streaming output + + + + + + + + + + + + + + Acts as a proxy for a logical replication slot + initialized for for the test_decoding logical decoding plugin. + + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The name of the existing replication slot + + + + Creates a new instance. + + + Create a instance with this + constructor to wrap an existing PostgreSQL replication slot that has + been initialized for the test_decoding logical decoding plugin. + + The representing the existing replication slot + + + + Extension methods to use with the + test_decoding logical decoding plugin. + See https://www.postgresql.org/docs/current/test-decoding.html. + + + + + Creates a class that wraps a replication slot using the + test_decoding logical decoding plugin. + + + See https://www.postgresql.org/docs/current/test-decoding.html + for more information. + + The to use for creating the + replication slot + The name of the slot to create. Must be a valid replication slot name (see + https://www.postgresql.org/docs/current/warm-standby.html#STREAMING-REPLICATION-SLOTS-MANIPULATION). + + + if this replication slot shall be temporary one; otherwise . + Temporary slots are not saved to disk and are automatically dropped on error or when the session has finished. + + + A to specify what to do with the snapshot created during logical slot + initialization. , which is also the default, will export the + snapshot for use in other sessions. This option can't be used inside a transaction. + will use the snapshot for the current transaction executing the + command. This option must be used in a transaction, and must be the + first command run in that transaction. Finally, will just use + the snapshot for logical decoding as normal but won't do anything else with it. + + + If , this logical replication slot supports decoding of two-phase transactions. With this option, + two-phase commands like PREPARE TRANSACTION, COMMIT PREPARED and ROLLBACK PREPARED are decoded and transmitted. + The transaction will be decoded and transmitted at PREPARE TRANSACTION time. The default is . + + + An optional token to cancel the asynchronous operation. The default value is . + + + A that wraps the newly-created replication slot. + + + + + Instructs the server to start streaming the WAL for logical replication using the test_decoding logical decoding plugin, + starting at WAL location or at the slot's consistent point if + isn't specified. + The server can reply with an error, for example if the requested section of the WAL has already been recycled. + + The to use for starting replication + The replication slot that will be updated as replication progresses so that the server + knows which WAL segments are still needed by the standby. + + The token to monitor for stopping the replication. + The collection of options passed to the slot's logical decoding plugin. + The WAL location to begin streaming at. + A representing an that + can be used to stream WAL entries in form of instances. + + + + Represents a PostgreSQL timeline history file + + + + + File name of the timeline history file, e.g., 00000002.history. + + + + + Contents of the timeline history file. + + + + + A message representing a section of the WAL data stream. + + + + + A section of the WAL data stream that is raw WAL data in physical replication or decoded with the selected + logical decoding plugin in logical replication. It is only valid until the next + is requested from the stream. + + + A single WAL record is never split across two XLogData messages. + When a WAL record crosses a WAL page boundary, and is therefore already split using continuation records, + it can be split at the page boundary. In other words, the first main WAL record and its continuation + records can be sent in different XLogData messages. + + + + + Stripped-down version of , mainly to support Amazon Redshift. + + + + + Performs some post-setup configuration that's common to both table columns and non-columns. + + + + + Provides schema information about a column. + + + Note that this can correspond to a field returned in a query which isn't an actual table column + + See https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldatareader.getschematable(v=vs.110).aspx + for information on the meaning of the different fields. + + + + + Initializes a new instance of the class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The describing the type of this column. + + + + + The OID of the type of this column in the PostgreSQL pg_type catalog table. + + + + + The OID of the PostgreSQL table of this column. + + + + + The column's position within its table. Note that this is different from , + which is the column's position within the resultset. + + + + + The default SQL expression for this column. + + + + + The value for this column's type. + + + + + + + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + +

+ Receives a user SQL query as passed in by the user in or + , and rewrites it for PostgreSQL compatibility. +

+

+ This includes doing rewriting named parameter placeholders to positional (@p => $1), and splitting the query + up by semicolons (legacy batching, SELECT 1; SELECT 2). +

+
+ The user-facing being executed. + Whether PostgreSQL standards-conforming are used. + + A bool indicating whether parameters contains a list of preconfigured parameters or an empty list to be filled with derived + parameters. + +
+ + + Specifies server type preference. + + + + + Any successful connection is acceptable. + + + + + Session must accept read-write transactions by default (that is, the server must not be in hot standby mode and the + default_transaction_read_only parameter must be off). + + + + + Session must not accept read-write transactions by default (the converse). + + + + + Server must not be in hot standby mode. + + + + + Server must be in hot standby mode. + + + + + First try to find a primary server, but if none of the listed hosts is a primary server, try again in mode. + + + + + First try to find a standby server, but if none of the listed hosts is a standby server, try again in mode. + + + + + Utility class to execute a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it and at the same time prevent event if the original fails later. + + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The result . + The representing the asynchronous wait. + + + + Executes a potentially non-cancellable while allowing to timeout and/or cancel awaiting for it. + If the given task does not complete within , a is thrown. + The executed may be left in an incomplete state after the that this method returns completes dues to timeout and/or cancellation request. + The method guarantees that the abandoned, incomplete is not going to produce event if it fails later. + + Gets the for execution with a combined that attempts to cancel the in an event of the timeout or external cancellation request. + The timeout after which the should be faulted with a if it hasn't otherwise completed. + The to monitor for a cancellation request. + The representing the asynchronous wait. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A type mapper, managing how to read and write CLR values to PostgreSQL data types. + + + The preferred way to manage type mappings is on . An alternative, but discouraged, method, is to + manage them globally via ). + + + + + The default name translator to convert CLR type names and member names. Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET enum type to be mapped + + + + Removes an existing enum mapping. + + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR enum to a PostgreSQL enum type. + + + CLR enum labels are mapped by name to PostgreSQL enum labels. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your enum fields to manually specify a PostgreSQL enum label. + If there is a discrepancy between the .NET and database labels while an enum is read or written, + an exception will be raised. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing enum mapping. + + The .NET enum type to be mapped + + A PostgreSQL type name for the corresponding enum type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Maps a CLR type to a PostgreSQL composite type. + + + CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + You can also use the on your members to manually specify a PostgreSQL name. + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + The .NET type to be mapped + + + + Removes an existing composite mapping. + + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to + + + + + Maps a CLR type to a composite type. + + + Maps CLR fields and properties by string to PostgreSQL names. + The translation strategy can be controlled by the parameter, + which defaults to . + If there is a discrepancy between the .NET type and database type while a composite is read or written, + an exception will be raised. + + The .NET type to be mapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Removes an existing composite mapping. + + The .NET type to be unmapped. + + A PostgreSQL type name for the corresponding composite type in the database. + If null, the name translator given in will be used. + + + A component which will be used to translate CLR names (e.g. SomeClass) into database names (e.g. some_class). + Defaults to . + + + + + Adds a type info resolver factory which can add or modify support for PostgreSQL types. + Typically used by plugins. + + The type resolver factory to be added. + + + + Configures the JSON serializer options used when reading and writing all System.Text.Json data. + + Options to customize JSON serialization and deserialization. + + + + + Sets up dynamic System.Text.Json mappings. This allows mapping arbitrary .NET types to PostgreSQL json and jsonb + types, as well as and its derived types. + + + A list of CLR types to map to PostgreSQL jsonb (no need to specify ). + + + A list of CLR types to map to PostgreSQL json (no need to specify ). + + + Due to the dynamic nature of these mappings, they are not compatible with NativeAOT or trimming. + + + + + Sets up mappings for the PostgreSQL record type as a .NET or . + + The same builder instance so that multiple calls can be chained. + + + + Sets up mappings allowing the use of unmapped enum, range and multirange types. + + The same builder instance so that multiple calls can be chained. + + + + Resets all mapping changes performed on this type mapper and reverts it to its original, starting state. + + + + + The base class for user type mappings. + + + + + The name of the PostgreSQL type that this mapping is for. + + + + + The CLR type that this mapping is for. + + + + + Represents a timeout that will expire at some point. + + + + + A wrapper around to simplify reset management. + + + Since there's no way to reset a once it was cancelled, + we need to make sure that an existing cancellation token source hasn't been cancelled, + every time we start it (see https://github.com/dotnet/runtime/issues/4694). + + + + + Used, so we wouldn't concurently use the cts for the cancellation, while it's being disposed + + + + + Set the timeout on the wrapped + and make sure that it hasn't been cancelled yet + + + An optional token to cancel the asynchronous operation. The default value is . + + The from the wrapped + + + + Restart the timeout on the wrapped without reinitializing it, + even if is already set to + + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + The from the wrapped + + + + Reset the wrapper to contain a unstarted and uncancelled + in order make sure the next call to will not invalidate + the cancellation token. + + + + + Set the timeout on the wrapped + to + + + can still arrive at a state + where it's value is if the + passed to gets a cancellation request. + If this is the case it will be resolved upon the next call to + or . Calling multiple times or without calling + first will do no any harm (besides eating a tiny amount of CPU cycles). + + + + + Cancel the wrapped + + + + + Cancel the wrapped after delay + + + + + The from the wrapped + . + + + The token is only valid after calling + and before calling the next time. + Otherwise you may end up with a token that has already been + cancelled or belongs to a cancellation token source that has + been disposed. + + + + + Allocation free helper function to find if version is greater than expected + + + + + + + + Note that a connection may be closed before its TransactionScope completes. In this case we close the NpgsqlConnection + as usual but the connector in a special list in the pool; it will be closed only when the scope completes. + + + + + Represents a PostgreSQL data type that can be written or read to the database. + Used in places such as to unambiguously specify + how to encode or decode values. + + + See https://www.postgresql.org/docs/current/static/datatype.html. + + + + + Corresponds to the PostgreSQL 8-byte "bigint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 8-byte floating-point "double" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 4-byte "integer" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL arbitrary-precision "numeric" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL floating-point "real" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL 2-byte "smallint" type. + + See https://www.postgresql.org/docs/current/static/datatype-numeric.html + + + + Corresponds to the PostgreSQL "money" type. + + See https://www.postgresql.org/docs/current/static/datatype-money.html + + + + Corresponds to the PostgreSQL "boolean" type. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL geometric "box" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "circle" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "line" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "lseg" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "path" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "point" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL geometric "polygon" type. + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + Corresponds to the PostgreSQL "char(n)" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "text" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "varchar" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL internal "name" type. + + See https://www.postgresql.org/docs/current/static/datatype-character.html + + + + Corresponds to the PostgreSQL "citext" type for the citext module. + + See https://www.postgresql.org/docs/current/static/citext.html + + + + Corresponds to the PostgreSQL "char" type. + + + This is an internal field and should normally not be used for regular applications. + + See https://www.postgresql.org/docs/current/static/datatype-text.html + + + + + Corresponds to the PostgreSQL "bytea" type, holding a raw byte string. + + See https://www.postgresql.org/docs/current/static/datatype-binary.html + + + + Corresponds to the PostgreSQL "date" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "timestamp with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "interval" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "time with time zone" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the obsolete PostgreSQL "abstime" type. + + See https://www.postgresql.org/docs/current/static/datatype-datetime.html + + + + Corresponds to the PostgreSQL "inet" type. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "cidr" type, a field storing an IPv4 or IPv6 network. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr" type, a field storing a 6-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "macaddr8" type, a field storing a 6-byte or 8-byte physical address. + + See https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + Corresponds to the PostgreSQL "bit" type. + + See https://www.postgresql.org/docs/current/static/datatype-bit.html + + + + Corresponds to the PostgreSQL "varbit" type, a field storing a variable-length string of bits. + + See https://www.postgresql.org/docs/current/static/datatype-boolean.html + + + + Corresponds to the PostgreSQL "tsvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "tsquery" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "regconfig" type. + + See https://www.postgresql.org/docs/current/static/datatype-textsearch.html + + + + Corresponds to the PostgreSQL "uuid" type. + + See https://www.postgresql.org/docs/current/static/datatype-uuid.html + + + + Corresponds to the PostgreSQL "xml" type. + + See https://www.postgresql.org/docs/current/static/datatype-xml.html + + + + Corresponds to the PostgreSQL "json" type, a field storing JSON in text format. + + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonb" type, a field storing JSON in an optimized binary. + format. + + + Supported since PostgreSQL 9.4. + See https://www.postgresql.org/docs/current/static/datatype-json.html + + + + + Corresponds to the PostgreSQL "jsonpath" type, a field storing JSON path in text format. + format. + + + Supported since PostgreSQL 12. + See https://www.postgresql.org/docs/current/datatype-json.html#DATATYPE-JSONPATH + + + + + Corresponds to the PostgreSQL "hstore" type, a dictionary of string key-value pairs. + + See https://www.postgresql.org/docs/current/static/hstore.html + + + + Corresponds to the PostgreSQL "refcursor" type. + + + + + Corresponds to the PostgreSQL internal "oidvector" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL internal "int2vector" type. + + + + + Corresponds to the PostgreSQL "oid" type. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "xid8" type, an internal transaction identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "cid" type, an internal command identifier. + + See https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + Corresponds to the PostgreSQL "regtype" type, a numeric (OID) ID of a type in the pg_type table. + + + + + Corresponds to the PostgreSQL "tid" type, a tuple id identifying the physical location of a row within its table. + + + + + Corresponds to the PostgreSQL "pg_lsn" type, which can be used to store LSN (Log Sequence Number) data which + is a pointer to a location in the WAL. + + + See: https://www.postgresql.org/docs/current/datatype-pg-lsn.html and + https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=7d03a83f4d0736ba869fa6f93973f7623a27038a + + + + + A special value that can be used to send parameter values to the database without + specifying their type, allowing the database to cast them to another value based on context. + The value will be converted to a string and send as text. + + + This value shouldn't ordinarily be used, and makes sense only when sending a data type + unsupported by Npgsql. + + + + + The geometry type for PostgreSQL spatial extension PostGIS. + + + + + The geography (geodetic) type for PostgreSQL spatial extension PostGIS. + + + + + The PostgreSQL ltree type, each value is a label path "a.label.tree.value", forming a tree in a set. + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL lquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + The PostgreSQL ltxtquery type for PostgreSQL extension ltree + + See https://www.postgresql.org/docs/current/static/ltree.html + + + + Corresponds to the PostgreSQL "int4range" type. + + + + + Corresponds to the PostgreSQL "int8range" type. + + + + + Corresponds to the PostgreSQL "numrange" type. + + + + + Corresponds to the PostgreSQL "tsrange" type. + + + + + Corresponds to the PostgreSQL "tstzrange" type. + + + + + Corresponds to the PostgreSQL "daterange" type. + + + + + Corresponds to the PostgreSQL "int4multirange" type. + + + + + Corresponds to the PostgreSQL "int8multirange" type. + + + + + Corresponds to the PostgreSQL "nummultirange" type. + + + + + Corresponds to the PostgreSQL "tsmultirange" type. + + + + + Corresponds to the PostgreSQL "tstzmultirange" type. + + + + + Corresponds to the PostgreSQL "datemultirange" type. + + + + + Corresponds to the PostgreSQL "array" type, a variable-length multidimensional array of + another type. This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Array | NpgsqlDbType.Integer) + + See https://www.postgresql.org/docs/current/static/arrays.html + + + + Corresponds to the PostgreSQL "range" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Range | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 9.2. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Corresponds to the PostgreSQL "multirange" type, continuous range of values of specific type. + This value must be combined with another value from + via a bit OR (e.g. NpgsqlDbType.Multirange | NpgsqlDbType.Integer) + + + Supported since PostgreSQL 14. + See https://www.postgresql.org/docs/current/static/rangetypes.html + + + + Can return null when a custom range type is used. + + + Can return null when a plugin type or custom range type is used. + + + Should not be used with display names, first normalize it instead. + + + + A raw representation of the PostgreSQL interval datatype. Use only when or NodaTime + Period do not have sufficient range to handle your values. + + +

+ See https://www.postgresql.org/docs/current/static/datatype-geometric.html. +

+

+ Do not use this type unless you have to: prefer or NodaTime + Period when possible. +

+
+
+ + + Constructs an . + + + + + Months and years, after time for alignment. + + + + + Days, after time for alignment. + + + + + Remaining time unit smaller than a day, in microseconds. + + + + + + + + + + + + + + Wraps a PostgreSQL Write-Ahead Log Sequence Number (see: https://www.postgresql.org/docs/current/datatype-pg-lsn.html) + + + Log Sequence Numbers are a fundamental concept of the PostgreSQL Write-Ahead Log and by that of + PostgreSQL replication. See https://www.postgresql.org/docs/current/wal-internals.html for what they represent. + + This struct provides conversions from/to and and beyond that tries to port + the methods and operators in https://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/utils/adt/pg_lsn.c + but nothing more. + + + + + Zero is used indicate an invalid Log Sequence Number. No XLOG record can begin at zero. + + + + + Initializes a new instance of . + + The value to wrap. + + + + Returns a value indicating whether this instance is equal to a specified + instance. + + A instance to compare to this instance. + if the current instance is equal to the value parameter; + otherwise, . + + + + Compares this instance to a specified and returns an indication of their + relative values. + + A instance to compare to this instance. + A signed number indicating the relative values of this instance and . + + + + Returns a value indicating whether this instance is equal to a specified object. + + An object to compare to this instance + if the current instance is equal to the value parameter; + otherwise, . + + + + Returns the hash code for this instance. + + A 32-bit signed integer hash code. + + + + Converts the numeric value of this instance to its equivalent string representation. + + The string representation of the value of this instance, consisting of two hexadecimal numbers of + up to 8 digits each, separated by a slash + + + + Converts the string representation of a Log Sequence Number to a instance. + + A string that represents the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + The parameter is . + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Converts the span representation of a Log Sequence Number to a instance. + + A span containing the characters that represent the Log Sequence Number to convert. + + A equivalent to the Log Sequence Number specified in . + + + The parameter represents a number less than or greater than + . + + The parameter is not in the right format. + + + + Tries to convert the string representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A string that represents the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is or , is not in the right format, or represents a number + less than or greater than . This parameter is + passed uninitialized; any value originally supplied in result will be overwritten. + + + if c> was converted successfully; otherwise, . + + + + + Tries to convert the span representation of a Log Sequence Number to an + instance. A return value indicates whether the conversion succeeded or failed. + + A span containing the characters that represent the Log Sequence Number to convert. + + When this method returns, contains a instance equivalent to the Log Sequence + Number contained in , if the conversion succeeded, or the default value for + (0) if the conversion failed. The conversion fails if the + parameter is empty, is not in the right format, or represents a number less than + or greater than . This parameter is passed + uninitialized; any value originally supplied in result will be overwritten. + + + if was converted successfully; otherwise, . + + + + Converts the value of a 64-bit unsigned integer to a instance. + + A 64-bit unsigned integer. + A new instance of initialized to . + + + + Converts the value of a instance to a 64-bit unsigned integer value. + + A instance + The contents of as 64-bit unsigned integer. + + + + Returns a value that indicates whether two specified instances of are equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if equals ; otherwise, . + + + + + Returns a value that indicates whether two specified instances of are not + equal. + + The first Log Sequence Number to compare. + The second Log Sequence Number to compare. + + if does not equal ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than + another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is less than + another specified instance. + + The first value to compare. + The second value to compare. + + if is less than ; otherwise, + . + + + + + Returns a value indicating whether a specified instance is greater than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is greater than or equal to ; + otherwise, . + + + + + Returns the larger of two values. + + The first value to compare. + The second value to compare. + + The larger of the two values. + + + + + Returns the smaller of two values. + + The first value to compare. + The second value to compare. + + The smaller of the two values. + + + + + Returns a value indicating whether a specified instance is less than or + equal to another specified instance. + + The first value to compare. + The second value to compare. + + if is less than or equal to ; + otherwise, . + + + + + Subtracts two specified values. + + The first value. + The second value. + The number of bytes separating those write-ahead log locations. + + + + Subtract the number of bytes from a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to subtract. + A new instance. + + The resulting instance would represent a number less than + . + + + + + Add the number of bytes to a instance, giving a new + instance. + Handles both positive and negative numbers of bytes. + + + The instance representing a write-ahead log location. + + The number of bytes to add. + A new instance. + + The resulting instance would represent a number greater than + . + + + + + Represents a PostgreSQL range type. + + The element type of the values in the range. + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Defined by PostgreSQL to represent an empty range. + + + + + Defined by PostgreSQL to represent an infinite lower bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an infinite upper bound. + Some element types may have specific handling for this value distinct from a missing or null value. + + + + + Defined by PostgreSQL to represent an null bound. + Some element types may have specific handling for this value distinct from an infinite or missing value. + + + + + Defined by PostgreSQL to represent a lower inclusive bound. + + + + + Defined by PostgreSQL to represent a lower exclusive bound. + + + + + Defined by PostgreSQL to represent an upper inclusive bound. + + + + + Defined by PostgreSQL to represent an upper exclusive bound. + + + + + Defined by PostgreSQL to separate the values for the upper and lower bounds. + + + + + The used by to convert bounds into . + + + + + True if implements ; otherwise, false. + + + + + Represents the empty range. This field is read-only. + + + + + The lower bound of the range. Only valid when is false. + + + + + The upper bound of the range. Only valid when is false. + + + + + The characteristics of the boundaries. + + + + + True if the lower bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + + True if the range is empty; otherwise, false. + + + + + Constructs an with inclusive and definite bounds. + + The lower bound of the range. + The upper bound of the range. + + + + Constructs an with definite bounds. + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + The upper bound of the range. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + + + Constructs an . + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + + + Attempts to determine if the range is malformed or implicitly empty. + + The lower bound of the range. + The upper bound of the range. + The characteristics of the range boundaries. + + True if the range is implicitly empty; otherwise, false. + + + + + Evaluates the boundary flags. + + True if the lower bound is is part of the range (i.e. inclusive); otherwise, false. + True if the lower bound is indefinite (i.e. infinite or unbounded); otherwise, false. + True if the upper bound is part of the range (i.e. inclusive); otherwise, false. + True if the upper bound is indefinite (i.e. infinite or unbounded); otherwise, false. + + The boundary characteristics. + + + + + Indicates whether the on the left is equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is equal to the on the right; otherwise, false. + + + + + Indicates whether the on the left is not equal to the on the right. + + The on the left. + The on the right. + + True if the on the left is not equal to the on the right; otherwise, false. + + + + + + + + + + + + + + + + + Parses the well-known text representation of a PostgreSQL range type into a . + + A PosgreSQL range type in a well-known text format. + + The represented by the . + + + Malformed range literal. + + + Malformed range literal. Missing left parenthesis or bracket. + + + Malformed range literal. Missing right parenthesis or bracket. + + + Malformed range literal. Missing comma after lower bound. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + Represents a type converter for . + + + + + Adds a to the closed form . + + + + + + + + + + + + + + + + + Represents characteristics of range type boundaries. + + + See: https://www.postgresql.org/docs/current/static/rangetypes.html + + + + + The default flag. The range is not empty and has boundaries that are definite and exclusive. + + + + + The range is empty. E.g. '(0,0)', 'empty'. + + + + + The lower bound is inclusive. E.g. '[0,5]', '[0,5)', '[0,)'. + + + + + The upper bound is inclusive. E.g. '[0,5]', '(0,5]', '(,5]'. + + + + + The lower bound is infinite or indefinite. E.g. '(null,5]', '(-infinity,5]', '(,5]'. + + + + + The upper bound is infinite or indefinite. E.g. '[0,null)', '[0,infinity)', '[0,)'. + + + + + Both the lower and upper bounds are inclusive. + + + + + Both the lower and upper bounds are indefinite. + + + + + The lower bound is both inclusive and indefinite. This represents an error condition. + + + + + The upper bound is both inclusive and indefinite. This represents an error condition. + + + + + Represents a PostgreSQL tsquery. This is the base class for the + lexeme, not, or, and, and "followed by" nodes. + + + + + Node kind + + + + + NodeKind + + + + + Represents the empty tsquery. Should only be used at top level. + + + + + Lexeme + + + + + Not operator + + + + + And operator + + + + + Or operator + + + + + "Followed by" operator + + + + + Constructs an . + + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Writes the tsquery in PostgreSQL's text format. + + + + + Parses a tsquery in PostgreSQL's text format. + + + + + + + + + + + + + Returns a value indicating whether this instance and a specified object represent the same value. + + An object to compare to this instance. + if g is equal to this instance; otherwise, . + + + + Indicates whether the values of two specified objects are equal. + + The first object to compare. + The second object to compare. + if and are equal; otherwise, . + + + + Indicates whether the values of two specified objects are not equal. + + The first object to compare. + The second object to compare. + if and are not equal; otherwise, . + + + + TsQuery Lexeme node. + + + + + Lexeme text. + + + + + Weights is a bitmask of the Weight enum. + + + + + Prefix search. + + + + + Creates a tsquery lexeme with only lexeme text. + + Lexeme text. + + + + Creates a tsquery lexeme with lexeme text and weights. + + Lexeme text. + Bitmask of enum Weight. + + + + Creates a tsquery lexeme with lexeme text, weights and prefix search flag. + + Lexeme text. + Bitmask of enum Weight. + Is prefix search? + + + + Weight enum, can be OR'ed together. + + + + + None + + + + + D + + + + + C + + + + + B + + + + + A + + + + + + + + + + + TsQuery Not node. + + + + + Child node + + + + + Creates a not operator, with a given child node. + + + + + + + + + + + + Base class for TsQuery binary operators (& and |). + + + + + Left child + + + + + Right child + + + + + Constructs a . + + + + + TsQuery And node. + + + + + Creates an and operator, with two given child nodes. + + + + + + + + + + + + + TsQuery Or Node. + + + + + Creates an or operator, with two given child nodes. + + + + + + + + + + + + + TsQuery "Followed by" Node. + + + + + The distance between the 2 nodes, in lexemes. + + + + + Creates a "followed by" operator, specifying 2 child nodes and the + distance between them in lexemes. + + + + + + + + + + + + + + Represents an empty tsquery. Shold only be used as top node. + + + + + Creates a tsquery that represents an empty query. Should not be used as child node. + + + + + + + + + + + Represents a PostgreSQL tsvector. + + + + + Parses a tsvector in PostgreSQL's text format. + + + + + + + Returns the lexeme at a specific index + + + + + + + Gets the number of lexemes. + + + + + Returns an enumerator. + + + + + + Returns an enumerator. + + + + + + Gets a string representation in PostgreSQL's format. + + + + + + + + + + + + + + + Represents a lexeme. A lexeme consists of a text string and optional word entry positions. + + + + + Gets or sets the text. + + + + + Creates a lexeme with no word entry positions. + + + + + + Creates a lexeme with word entry positions. + + + + + + + Gets a word entry position. + + + + + + + Gets the number of word entry positions. + + + + + Creates a string representation in PostgreSQL's format. + + + + + + Represents a word entry position and an optional weight. + + + + + Creates a WordEntryPos with a given position and weight. + + Position values can range from 1 to 16383; larger numbers are silently set to 16383. + A weight labeled between A and D. + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + The position is a 14-bit unsigned integer indicating the position in the text this lexeme occurs. Cannot be 0. + + + + + Prints this lexeme in PostgreSQL's format, i.e. position is followed by weight (weight is only printed if A, B or C). + + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + The weight is labeled from A to D. D is the default, and not printed. + + + + + D, the default + + + + + C + + + + + B + + + + + A + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Gets a hash code for the current object. + + + + + Determines whether the specified object is equal to the current object. + + + + + Determines whether the specified object is unequal to the current object. + + + + + Represents a PostgreSQL point type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL line type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Line Segment type. + + + + + Represents a PostgreSQL box type. + + + See https://www.postgresql.org/docs/current/static/datatype-geometric.html + + + + + Represents a PostgreSQL Path type. + + + + + Represents a PostgreSQL Polygon type. + + + + + Represents a PostgreSQL Circle type. + + + + + Represents a PostgreSQL inet type, which is a combination of an IPAddress and a subnet mask. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL cidr type. + + + https://www.postgresql.org/docs/current/static/datatype-net-types.html + + + + + Represents a PostgreSQL tid value + + + https://www.postgresql.org/docs/current/static/datatype-oid.html + + + + + Block number + + + + + Tuple index within block + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + + + + The name of PostgreSQL field that corresponds to this CLR property or field + + + + + Indicates that this property or field corresponds to a PostgreSQL field with the specified name + + The name of PostgreSQL field that corresponds to this CLR property or field + + + This API supports the logging infrastructure and is not intended to be used directly from your code. It is subject to change in the future. + +
+
diff --git a/packages/Npgsql.8.0.3/postgresql.png b/packages/Npgsql.8.0.3/postgresql.png new file mode 100644 index 0000000..3a21b19 Binary files /dev/null and b/packages/Npgsql.8.0.3/postgresql.png differ diff --git a/packages/System.Buffers.4.5.1/.signature.p7s b/packages/System.Buffers.4.5.1/.signature.p7s new file mode 100644 index 0000000..1bf2285 Binary files /dev/null and b/packages/System.Buffers.4.5.1/.signature.p7s differ diff --git a/packages/System.Buffers.4.5.1/LICENSE.TXT b/packages/System.Buffers.4.5.1/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.Buffers.4.5.1/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Buffers.4.5.1/System.Buffers.4.5.1.nupkg b/packages/System.Buffers.4.5.1/System.Buffers.4.5.1.nupkg new file mode 100644 index 0000000..f7ee6b2 Binary files /dev/null and b/packages/System.Buffers.4.5.1/System.Buffers.4.5.1.nupkg differ diff --git a/packages/System.Buffers.4.5.1/THIRD-PARTY-NOTICES.TXT b/packages/System.Buffers.4.5.1/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..db542ca --- /dev/null +++ b/packages/System.Buffers.4.5.1/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,309 @@ +.NET Core uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Core software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +http://www.unicode.org/copyright.html#License + +Copyright © 1991-2017 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in http://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +http://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + diff --git a/packages/System.Buffers.4.5.1/lib/net461/System.Buffers.dll b/packages/System.Buffers.4.5.1/lib/net461/System.Buffers.dll new file mode 100644 index 0000000..f2d83c5 Binary files /dev/null and b/packages/System.Buffers.4.5.1/lib/net461/System.Buffers.dll differ diff --git a/packages/System.Buffers.4.5.1/lib/net461/System.Buffers.xml b/packages/System.Buffers.4.5.1/lib/net461/System.Buffers.xml new file mode 100644 index 0000000..e243dce --- /dev/null +++ b/packages/System.Buffers.4.5.1/lib/net461/System.Buffers.xml @@ -0,0 +1,38 @@ + + + System.Buffers + + + + Provides a resource pool that enables reusing instances of type . + The type of the objects that are in the resource pool. + + + Initializes a new instance of the class. + + + Creates a new instance of the class. + A new instance of the class. + + + Creates a new instance of the class using the specifed configuration. + The maximum length of an array instance that may be stored in the pool. + The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access. + A new instance of the class with the specified configuration. + + + Retrieves a buffer that is at least the requested length. + The minimum length of the array. + An array of type that is at least minimumLength in length. + + + Returns an array to the pool that was previously obtained using the method on the same instance. + A buffer to return to the pool that was previously obtained using the method. + Indicates whether the contents of the buffer should be cleared before reuse. If clearArray is set to true, and if the pool will store the buffer to enable subsequent reuse, the method will clear the array of its contents so that a subsequent caller using the method will not see the content of the previous caller. If clearArray is set to false or if the pool will release the buffer, the array&#39;s contents are left unchanged. + + + Gets a shared instance. + A shared instance. + + + \ No newline at end of file diff --git a/packages/System.Buffers.4.5.1/lib/netcoreapp2.0/_._ b/packages/System.Buffers.4.5.1/lib/netcoreapp2.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Buffers.4.5.1/lib/netstandard1.1/System.Buffers.dll b/packages/System.Buffers.4.5.1/lib/netstandard1.1/System.Buffers.dll new file mode 100644 index 0000000..14e5c53 Binary files /dev/null and b/packages/System.Buffers.4.5.1/lib/netstandard1.1/System.Buffers.dll differ diff --git a/packages/System.Buffers.4.5.1/lib/netstandard1.1/System.Buffers.xml b/packages/System.Buffers.4.5.1/lib/netstandard1.1/System.Buffers.xml new file mode 100644 index 0000000..e243dce --- /dev/null +++ b/packages/System.Buffers.4.5.1/lib/netstandard1.1/System.Buffers.xml @@ -0,0 +1,38 @@ + + + System.Buffers + + + + Provides a resource pool that enables reusing instances of type . + The type of the objects that are in the resource pool. + + + Initializes a new instance of the class. + + + Creates a new instance of the class. + A new instance of the class. + + + Creates a new instance of the class using the specifed configuration. + The maximum length of an array instance that may be stored in the pool. + The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access. + A new instance of the class with the specified configuration. + + + Retrieves a buffer that is at least the requested length. + The minimum length of the array. + An array of type that is at least minimumLength in length. + + + Returns an array to the pool that was previously obtained using the method on the same instance. + A buffer to return to the pool that was previously obtained using the method. + Indicates whether the contents of the buffer should be cleared before reuse. If clearArray is set to true, and if the pool will store the buffer to enable subsequent reuse, the method will clear the array of its contents so that a subsequent caller using the method will not see the content of the previous caller. If clearArray is set to false or if the pool will release the buffer, the array&#39;s contents are left unchanged. + + + Gets a shared instance. + A shared instance. + + + \ No newline at end of file diff --git a/packages/System.Buffers.4.5.1/lib/netstandard2.0/System.Buffers.dll b/packages/System.Buffers.4.5.1/lib/netstandard2.0/System.Buffers.dll new file mode 100644 index 0000000..c0970c0 Binary files /dev/null and b/packages/System.Buffers.4.5.1/lib/netstandard2.0/System.Buffers.dll differ diff --git a/packages/System.Buffers.4.5.1/lib/netstandard2.0/System.Buffers.xml b/packages/System.Buffers.4.5.1/lib/netstandard2.0/System.Buffers.xml new file mode 100644 index 0000000..e243dce --- /dev/null +++ b/packages/System.Buffers.4.5.1/lib/netstandard2.0/System.Buffers.xml @@ -0,0 +1,38 @@ + + + System.Buffers + + + + Provides a resource pool that enables reusing instances of type . + The type of the objects that are in the resource pool. + + + Initializes a new instance of the class. + + + Creates a new instance of the class. + A new instance of the class. + + + Creates a new instance of the class using the specifed configuration. + The maximum length of an array instance that may be stored in the pool. + The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access. + A new instance of the class with the specified configuration. + + + Retrieves a buffer that is at least the requested length. + The minimum length of the array. + An array of type that is at least minimumLength in length. + + + Returns an array to the pool that was previously obtained using the method on the same instance. + A buffer to return to the pool that was previously obtained using the method. + Indicates whether the contents of the buffer should be cleared before reuse. If clearArray is set to true, and if the pool will store the buffer to enable subsequent reuse, the method will clear the array of its contents so that a subsequent caller using the method will not see the content of the previous caller. If clearArray is set to false or if the pool will release the buffer, the array&#39;s contents are left unchanged. + + + Gets a shared instance. + A shared instance. + + + \ No newline at end of file diff --git a/packages/System.Buffers.4.5.1/lib/uap10.0.16299/_._ b/packages/System.Buffers.4.5.1/lib/uap10.0.16299/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Buffers.4.5.1/ref/net45/System.Buffers.dll b/packages/System.Buffers.4.5.1/ref/net45/System.Buffers.dll new file mode 100644 index 0000000..022667e Binary files /dev/null and b/packages/System.Buffers.4.5.1/ref/net45/System.Buffers.dll differ diff --git a/packages/System.Buffers.4.5.1/ref/net45/System.Buffers.xml b/packages/System.Buffers.4.5.1/ref/net45/System.Buffers.xml new file mode 100644 index 0000000..e243dce --- /dev/null +++ b/packages/System.Buffers.4.5.1/ref/net45/System.Buffers.xml @@ -0,0 +1,38 @@ + + + System.Buffers + + + + Provides a resource pool that enables reusing instances of type . + The type of the objects that are in the resource pool. + + + Initializes a new instance of the class. + + + Creates a new instance of the class. + A new instance of the class. + + + Creates a new instance of the class using the specifed configuration. + The maximum length of an array instance that may be stored in the pool. + The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access. + A new instance of the class with the specified configuration. + + + Retrieves a buffer that is at least the requested length. + The minimum length of the array. + An array of type that is at least minimumLength in length. + + + Returns an array to the pool that was previously obtained using the method on the same instance. + A buffer to return to the pool that was previously obtained using the method. + Indicates whether the contents of the buffer should be cleared before reuse. If clearArray is set to true, and if the pool will store the buffer to enable subsequent reuse, the method will clear the array of its contents so that a subsequent caller using the method will not see the content of the previous caller. If clearArray is set to false or if the pool will release the buffer, the array&#39;s contents are left unchanged. + + + Gets a shared instance. + A shared instance. + + + \ No newline at end of file diff --git a/packages/System.Buffers.4.5.1/ref/netcoreapp2.0/_._ b/packages/System.Buffers.4.5.1/ref/netcoreapp2.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Buffers.4.5.1/ref/netstandard1.1/System.Buffers.dll b/packages/System.Buffers.4.5.1/ref/netstandard1.1/System.Buffers.dll new file mode 100644 index 0000000..9daa056 Binary files /dev/null and b/packages/System.Buffers.4.5.1/ref/netstandard1.1/System.Buffers.dll differ diff --git a/packages/System.Buffers.4.5.1/ref/netstandard1.1/System.Buffers.xml b/packages/System.Buffers.4.5.1/ref/netstandard1.1/System.Buffers.xml new file mode 100644 index 0000000..e243dce --- /dev/null +++ b/packages/System.Buffers.4.5.1/ref/netstandard1.1/System.Buffers.xml @@ -0,0 +1,38 @@ + + + System.Buffers + + + + Provides a resource pool that enables reusing instances of type . + The type of the objects that are in the resource pool. + + + Initializes a new instance of the class. + + + Creates a new instance of the class. + A new instance of the class. + + + Creates a new instance of the class using the specifed configuration. + The maximum length of an array instance that may be stored in the pool. + The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access. + A new instance of the class with the specified configuration. + + + Retrieves a buffer that is at least the requested length. + The minimum length of the array. + An array of type that is at least minimumLength in length. + + + Returns an array to the pool that was previously obtained using the method on the same instance. + A buffer to return to the pool that was previously obtained using the method. + Indicates whether the contents of the buffer should be cleared before reuse. If clearArray is set to true, and if the pool will store the buffer to enable subsequent reuse, the method will clear the array of its contents so that a subsequent caller using the method will not see the content of the previous caller. If clearArray is set to false or if the pool will release the buffer, the array&#39;s contents are left unchanged. + + + Gets a shared instance. + A shared instance. + + + \ No newline at end of file diff --git a/packages/System.Buffers.4.5.1/ref/netstandard2.0/System.Buffers.dll b/packages/System.Buffers.4.5.1/ref/netstandard2.0/System.Buffers.dll new file mode 100644 index 0000000..a294e52 Binary files /dev/null and b/packages/System.Buffers.4.5.1/ref/netstandard2.0/System.Buffers.dll differ diff --git a/packages/System.Buffers.4.5.1/ref/netstandard2.0/System.Buffers.xml b/packages/System.Buffers.4.5.1/ref/netstandard2.0/System.Buffers.xml new file mode 100644 index 0000000..e243dce --- /dev/null +++ b/packages/System.Buffers.4.5.1/ref/netstandard2.0/System.Buffers.xml @@ -0,0 +1,38 @@ + + + System.Buffers + + + + Provides a resource pool that enables reusing instances of type . + The type of the objects that are in the resource pool. + + + Initializes a new instance of the class. + + + Creates a new instance of the class. + A new instance of the class. + + + Creates a new instance of the class using the specifed configuration. + The maximum length of an array instance that may be stored in the pool. + The maximum number of array instances that may be stored in each bucket in the pool. The pool groups arrays of similar lengths into buckets for faster access. + A new instance of the class with the specified configuration. + + + Retrieves a buffer that is at least the requested length. + The minimum length of the array. + An array of type that is at least minimumLength in length. + + + Returns an array to the pool that was previously obtained using the method on the same instance. + A buffer to return to the pool that was previously obtained using the method. + Indicates whether the contents of the buffer should be cleared before reuse. If clearArray is set to true, and if the pool will store the buffer to enable subsequent reuse, the method will clear the array of its contents so that a subsequent caller using the method will not see the content of the previous caller. If clearArray is set to false or if the pool will release the buffer, the array&#39;s contents are left unchanged. + + + Gets a shared instance. + A shared instance. + + + \ No newline at end of file diff --git a/packages/System.Buffers.4.5.1/ref/uap10.0.16299/_._ b/packages/System.Buffers.4.5.1/ref/uap10.0.16299/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Buffers.4.5.1/useSharedDesignerContext.txt b/packages/System.Buffers.4.5.1/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Buffers.4.5.1/version.txt b/packages/System.Buffers.4.5.1/version.txt new file mode 100644 index 0000000..8d6cdd6 --- /dev/null +++ b/packages/System.Buffers.4.5.1/version.txt @@ -0,0 +1 @@ +7601f4f6225089ffb291dc7d58293c7bbf5c5d4f diff --git a/packages/System.Collections.Immutable.8.0.0/.signature.p7s b/packages/System.Collections.Immutable.8.0.0/.signature.p7s new file mode 100644 index 0000000..8254d63 Binary files /dev/null and b/packages/System.Collections.Immutable.8.0.0/.signature.p7s differ diff --git a/packages/System.Collections.Immutable.8.0.0/Icon.png b/packages/System.Collections.Immutable.8.0.0/Icon.png new file mode 100644 index 0000000..a0f1fdb Binary files /dev/null and b/packages/System.Collections.Immutable.8.0.0/Icon.png differ diff --git a/packages/System.Collections.Immutable.8.0.0/LICENSE.TXT b/packages/System.Collections.Immutable.8.0.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.Collections.Immutable.8.0.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Collections.Immutable.8.0.0/PACKAGE.md b/packages/System.Collections.Immutable.8.0.0/PACKAGE.md new file mode 100644 index 0000000..0ca0b16 --- /dev/null +++ b/packages/System.Collections.Immutable.8.0.0/PACKAGE.md @@ -0,0 +1,72 @@ +## About + + + +This package provides collections that are thread safe and guaranteed to never change their contents, also known as immutable collections. Like strings, any methods that perform modifications will not change the existing instance but instead return a new instance. For efficiency reasons, the implementation uses a sharing mechanism to ensure that newly created instances share as much data as possible with the previous instance while ensuring that operations have a predictable time complexity. + +The `System.Collections.Immutable` library is built-in as part of the shared framework in .NET Runtime. The package can be installed when you need to use it in other target frameworks. + +## How to Use + + + +```C# +using System.Collections.Immutable; + +// Create immutable set of strings +ImmutableHashSet colors = ImmutableHashSet.Create("Red", "Green", "Blue"); + +// Create a new set by adding and removing items from the original set +ImmutableHashSet colorsModified = colors.Remove("Red").Add("Orange"); + +foreach (string s in colorsModified) +{ + Console.WriteLine(s); +} + +/* Example output: + Blue + Green + Orange + */ + ``` + +## Main Types + + + +The main types provided by this library are: + +* `System.Collections.Immutable.ImmutableArray` +* `System.Collections.Immutable.ImmutableArray` +* `System.Collections.Immutable.ImmutableDictionary` +* `System.Collections.Immutable.ImmutableDictionary` +* `System.Collections.Immutable.ImmutableHashSet` +* `System.Collections.Immutable.ImmutableHashSet` +* `System.Collections.Immutable.ImmutableList` +* `System.Collections.Immutable.ImmutableList` +* `System.Collections.Immutable.ImmutableQueue` +* `System.Collections.Immutable.ImmutableQueue` +* `System.Collections.Immutable.ImmutableSortedDictionary` +* `System.Collections.Immutable.ImmutableSortedDictionary` +* `System.Collections.Immutable.ImmutableSortedSet` +* `System.Collections.Immutable.ImmutableSortedSet` +* `System.Collections.Immutable.ImmutableStack` +* `System.Collections.Immutable.ImmutableStack` +* `System.Collections.Frozen.FrozenDictionary` +* `System.Collections.Frozen.FrozenDictionary` +* `System.Collections.Frozen.FrozenSet` +* `System.Collections.Frozen.FrozenSet` + +## Additional Documentation + + + +- [Collections and Data Structures](https://docs.microsoft.com/dotnet/standard/collections/) +- [API documentation](https://docs.microsoft.com/dotnet/api/system.collections.immutable) + +## Feedback & Contributing + + + +System.Collections.Immutable is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime). diff --git a/packages/System.Collections.Immutable.8.0.0/System.Collections.Immutable.8.0.0.nupkg b/packages/System.Collections.Immutable.8.0.0/System.Collections.Immutable.8.0.0.nupkg new file mode 100644 index 0000000..1aa899d Binary files /dev/null and b/packages/System.Collections.Immutable.8.0.0/System.Collections.Immutable.8.0.0.nupkg differ diff --git a/packages/System.Collections.Immutable.8.0.0/THIRD-PARTY-NOTICES.TXT b/packages/System.Collections.Immutable.8.0.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..4b40333 --- /dev/null +++ b/packages/System.Collections.Immutable.8.0.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,1272 @@ +.NET Runtime uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Runtime software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +https://www.unicode.org/license.html + +Copyright © 1991-2022 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +https://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.13, October 13th, 2022 + + Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR +COPYRIGHT HOLDERS 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. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for vectorized hex parsing +-------------------------------------------------------- + +Copyright (c) 2022, Geoff Langdale +Copyright (c) 2022, Wojciech Mula +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for RFC 3492 +--------------------------- + +The punycode implementation is based on the sample code in RFC 3492 + +Copyright (C) The Internet Society (2003). All Rights Reserved. + +This document and translations of it may be copied and furnished to +others, and derivative works that comment on or otherwise explain it +or assist in its implementation may be prepared, copied, published +and distributed, in whole or in part, without restriction of any +kind, provided that the above copyright notice and this paragraph are +included on all such copies and derivative works. However, this +document itself may not be modified in any way, such as by removing +the copyright notice or references to the Internet Society or other +Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for +copyrights defined in the Internet Standards process must be +followed, or as required to translate it into languages other than +English. + +The limited permissions granted above are perpetual and will not be +revoked by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an +"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Copyright(C) The Internet Society 1997. All Rights Reserved. + +This document and translations of it may be copied and furnished to others, +and derivative works that comment on or otherwise explain it or assist in +its implementation may be prepared, copied, published and distributed, in +whole or in part, without restriction of any kind, provided that the above +copyright notice and this paragraph are included on all such copies and +derivative works.However, this document itself may not be modified in any +way, such as by removing the copyright notice or references to the Internet +Society or other Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for copyrights +defined in the Internet Standards process must be followed, or as required +to translate it into languages other than English. + +The limited permissions granted above are perpetual and will not be revoked +by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an "AS IS" +basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE +DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO +ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY +RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A +PARTICULAR PURPOSE. + +License notice for Algorithm from RFC 4122 - +A Universally Unique IDentifier (UUID) URN Namespace +---------------------------------------------------- + +Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. +Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & +Digital Equipment Corporation, Maynard, Mass. +Copyright (c) 1998 Microsoft. +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: permission to use, copy, +modify, and distribute this file for any purpose is hereby +granted without fee, provided that the above copyright notices and +this notice appears in all source code copies, and that none of +the names of Open Software Foundation, Inc., Hewlett-Packard +Company, Microsoft, or Digital Equipment Corporation be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Neither Open Software +Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital +Equipment Corporation makes any representations about the +suitability of this software for any purpose." + +License notice for The LLVM Compiler Infrastructure (Legacy License) +-------------------------------------------------------------------- + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +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 +CONTRIBUTORS OR COPYRIGHT HOLDERS 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 WITH THE +SOFTWARE. + +License notice for Bob Jenkins +------------------------------ + +By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this +code any way you wish, private, educational, or commercial. It's free. + +License notice for Greg Parker +------------------------------ + +Greg Parker gparker@cs.stanford.edu December 2000 +This code is in the public domain and may be copied or modified without +permission. + +License notice for libunwind based code +---------------------------------------- + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for Printing Floating-Point Numbers (Dragon4) +------------------------------------------------------------ + +/****************************************************************************** + Copyright (c) 2014 Ryan Juckett + http://www.ryanjuckett.com/ + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source + distribution. +******************************************************************************/ + +License notice for Printing Floating-point Numbers (Grisu3) +----------------------------------------------------------- + +Copyright 2012 the V8 project authors. All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xxHash +------------------------- + +xxHash - Extremely Fast Hash algorithm +Header File +Copyright (C) 2012-2021 Yann Collet + +BSD 2-Clause License (https://www.opensource.org/licenses/bsd-license.php) + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +You can contact the author at: + - xxHash homepage: https://www.xxhash.com + - xxHash source repository: https://github.com/Cyan4973/xxHash + +License notice for Berkeley SoftFloat Release 3e +------------------------------------------------ + +https://github.com/ucb-bar/berkeley-softfloat-3 +https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt + +License for Berkeley SoftFloat Release 3e + +John R. Hauser +2018 January 20 + +The following applies to the whole of SoftFloat Release 3e as well as to +each source file individually. + +Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the +University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions, and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE +DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xoshiro RNGs +-------------------------------- + +Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org) + +To the extent possible under law, the author has dedicated all copyright +and related and neighboring rights to this software to the public domain +worldwide. This software is distributed without any warranty. + +See . + +License for fastmod (https://github.com/lemire/fastmod), ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data) and fastrange (https://github.com/lemire/fastrange) +-------------------------------------- + + Copyright 2018 Daniel Lemire + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +License for sse4-strstr (https://github.com/WojciechMula/sse4-strstr) +-------------------------------------- + + Copyright (c) 2008-2016, Wojciech Mula + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for The C++ REST SDK +----------------------------------- + +C++ REST SDK + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for MessagePack-CSharp +------------------------------------- + +MessagePack for C# + +MIT License + +Copyright (c) 2017 Yoshifumi Kawai + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for lz4net +------------------------------------- + +lz4net + +Copyright (c) 2013-2017, Milosz Krajewski + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Nerdbank.Streams +----------------------------------- + +The MIT License (MIT) + +Copyright (c) Andrew Arnott + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for RapidJSON +---------------------------- + +Tencent is pleased to support the open source community by making RapidJSON available. + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. + +Licensed under the MIT License (the "License"); you may not use this file except +in compliance with the License. You may obtain a copy of the License at + +http://opensource.org/licenses/MIT + +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. + +License notice for DirectX Math Library +--------------------------------------- + +https://github.com/microsoft/DirectXMath/blob/master/LICENSE + + The MIT License (MIT) + +Copyright (c) 2011-2020 Microsoft Corp + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +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 OR COPYRIGHT +HOLDERS 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. + +License notice for ldap4net +--------------------------- + +The MIT License (MIT) + +Copyright (c) 2018 Alexander Chermyanin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for vectorized sorting code +------------------------------------------ + +MIT License + +Copyright (c) 2020 Dan Shechter + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for musl +----------------------- + +musl as a whole is licensed under the following standard MIT license: + +Copyright © 2005-2020 Rich Felker, et al. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + + +License notice for "Faster Unsigned Division by Constants" +------------------------------ + +Reference implementations of computing and using the "magic number" approach to dividing +by constants, including codegen instructions. The unsigned division incorporates the +"round down" optimization per ridiculous_fish. + +This is free and unencumbered software. Any copyright is dedicated to the Public Domain. + + +License notice for mimalloc +----------------------------------- + +MIT License + +Copyright (c) 2019 Microsoft Corporation, Daan Leijen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for The LLVM Project +----------------------------------- + +Copyright 2019 LLVM Project + +Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions; +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +https://llvm.org/LICENSE.txt + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +License notice for Apple header files +------------------------------------- + +Copyright (c) 1980, 1986, 1993 + The Regents of the University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. +4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +License notice for JavaScript queues +------------------------------------- + +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. + +Statement of Purpose +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: +the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; +moral rights retained by the original author(s) and/or performer(s); +publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; +rights protecting the extraction, dissemination, use and reuse of data in a Work; +database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and +other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. +4. Limitations and Disclaimers. +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. + + +License notice for FastFloat algorithm +------------------------------------- +MIT License +Copyright (c) 2021 csFastFloat authors +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License notice for MsQuic +-------------------------------------- + +Copyright (c) Microsoft Corporation. +Licensed under the MIT License. + +Available at +https://github.com/microsoft/msquic/blob/main/LICENSE + +License notice for m-ou-se/floatconv +------------------------------- + +Copyright (c) 2020 Mara Bos +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for code from The Practice of Programming +------------------------------- + +Copyright (C) 1999 Lucent Technologies + +Excerpted from 'The Practice of Programming +by Brian W. Kernighan and Rob Pike + +You may use this code for any purpose, as long as you leave the copyright notice and book citation attached. + +Notice for Euclidean Affine Functions and Applications to Calendar +Algorithms +------------------------------- + +Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar +Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf + +License notice for amd/aocl-libm-ose +------------------------------- + +Copyright (C) 2008-2020 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +License notice for fmtlib/fmt +------------------------------- + +Formatting library for C++ + +Copyright (c) 2012 - present, Victor Zverovich + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License for Jb Evain +--------------------- + +Copyright (c) 2006 Jb Evain (jbevain@gmail.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +License for MurmurHash3 +-------------------------------------- + +https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp + +MurmurHash3 was written by Austin Appleby, and is placed in the public +domain. The author hereby disclaims copyright to this source + +License for Fast CRC Computation +-------------------------------------- + +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc32_ieee_by4.asm +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc64_ecma_norm_by8.asm + +Copyright(c) 2011-2015 Intel Corporation All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License for C# Implementation of Fast CRC Computation +----------------------------------------------------- + +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/src/ImageSharp/Formats/Png/Zlib/Crc32.cs + +Copyright (c) Six Labors. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/LICENSE diff --git a/packages/System.Collections.Immutable.8.0.0/buildTransitive/net461/System.Collections.Immutable.targets b/packages/System.Collections.Immutable.8.0.0/buildTransitive/net461/System.Collections.Immutable.targets new file mode 100644 index 0000000..a399db4 --- /dev/null +++ b/packages/System.Collections.Immutable.8.0.0/buildTransitive/net461/System.Collections.Immutable.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Collections.Immutable.8.0.0/buildTransitive/net462/_._ b/packages/System.Collections.Immutable.8.0.0/buildTransitive/net462/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Collections.Immutable.8.0.0/buildTransitive/net6.0/_._ b/packages/System.Collections.Immutable.8.0.0/buildTransitive/net6.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Collections.Immutable.8.0.0/buildTransitive/netcoreapp2.0/System.Collections.Immutable.targets b/packages/System.Collections.Immutable.8.0.0/buildTransitive/netcoreapp2.0/System.Collections.Immutable.targets new file mode 100644 index 0000000..2ac1f1a --- /dev/null +++ b/packages/System.Collections.Immutable.8.0.0/buildTransitive/netcoreapp2.0/System.Collections.Immutable.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Collections.Immutable.8.0.0/lib/net462/System.Collections.Immutable.dll b/packages/System.Collections.Immutable.8.0.0/lib/net462/System.Collections.Immutable.dll new file mode 100644 index 0000000..ad944df Binary files /dev/null and b/packages/System.Collections.Immutable.8.0.0/lib/net462/System.Collections.Immutable.dll differ diff --git a/packages/System.Collections.Immutable.8.0.0/lib/net462/System.Collections.Immutable.xml b/packages/System.Collections.Immutable.8.0.0/lib/net462/System.Collections.Immutable.xml new file mode 100644 index 0000000..6c749c0 --- /dev/null +++ b/packages/System.Collections.Immutable.8.0.0/lib/net462/System.Collections.Immutable.xml @@ -0,0 +1,6100 @@ + + + + System.Collections.Immutable + + + + Provides a set of initialization methods for instances of the class. + + + Creates a from an according to specified key selector function. + An from which to create a . + A function to extract a key from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + A that contains the keys and values selected from the input sequence. + + + Creates a with the specified key/value pairs. + The key/value pairs to use to populate the dictionary. + The comparer implementation to use to compare keys for equality. If , is used. + The type of the keys in the dictionary. + The type of the values in the dictionary. + A that contains the specified keys and values. + + + Creates a from an according to specified key selector and element selector functions. + An from which to create a . + A function to extract a key from each element. + A transform function to produce a result element value from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + The type of the value returned by . + A that contains the keys and values selected from the input sequence. + + + Provides an immutable, read-only dictionary optimized for fast lookup and enumeration. + The type of the keys in the dictionary. + The type of the values in this dictionary. + + + Determines whether the dictionary contains the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the specified key; otherwise, . + + + Copies the elements of the dictionary to an array of type , starting at the specified . + The array that is the destination of the elements copied from the dictionary. + The zero-based index in at which copying begins. + + + Copies the elements of the dictionary to a span of type . + The span that is the destination of the elements copied from the dictionary. + + + Returns an enumerator that iterates through the dictionary. + An enumerator that iterates through the dictionary. + + + Gets either a reference to a in the dictionary or a reference if the key does not exist in the dictionary. + The key used for lookup. + A reference to a in the dictionary or a reference if the key does not exist in the dictionary. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the . + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Removes the element with the specified key from the . + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Adds an element with the provided key and value to the object. + The to use as the key of the element to add. + The to use as the value of the element to add. + + + Removes all elements from the object. + + + Determines whether the object contains an element with the specified key. + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + Returns an object for the object. + An object for the object. + + + Removes the element with the specified key from the object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The key of the value to get. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, the default value for the type of . + + if the dictionary contains an element with the specified key; otherwise, . + + + Gets the comparer used by this dictionary. + + + Gets the number of key/value pairs contained in the dictionary. + + + Gets an empty . + + + Gets a reference to the value associated with the specified key. + The key of the value to get. + + does not exist in the collection. + A reference to the value associated with the specified key. + + + Gets a collection containing the keys in the dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the element that has the specified key in the read-only dictionary. + The key to locate. + The element that has the specified key in the read-only dictionary. + + + Gets an enumerable collection that contains the keys in the read-only dictionary. + An enumerable collection that contains the keys in the read-only dictionary. + + + Gets an enumerable collection that contains the values in the read-only dictionary. + An enumerable collection that contains the values in the read-only dictionary. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + Gets a value indicating whether the object is read-only. + + true if the object is read-only; otherwise, false. + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key, or null if the key does not exist. + + + Gets an object containing the keys of the object. + An object containing the keys of the object. + + + Gets an object containing the values in the object. + An object containing the values in the object. + + + Gets a collection containing the values in the dictionary. + + + Enumerates the elements of a . + + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + + Creates a with the specified values. + The values to use to populate the set. + The comparer implementation to use to compare values for equality. If , is used. + The type of the values in the set. + A frozen set. + + + Provides an immutable, read-only set optimized for fast lookup and enumeration. + The type of the values in this set. + + + Determines whether the set contains the specified element. + The element to locate. + + if the set contains the specified element; otherwise, . + + + Copies the values in the set to an array, starting at the specified . + The array that is the destination of the values copied from the set. + The zero-based index in at which copying begins. + + + Copies the values in the set to a span. + The span that is the destination of the values copied from the set. + + + Returns an enumerator that iterates through the set. + An enumerator that iterates through the set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper subset of other; otherwise, false. + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper superset of other; otherwise, false. + + + Determines whether a set is a subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a subset of other; otherwise, false. + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a superset of other; otherwise, false. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + true if the current set and other share at least one common element; otherwise, false. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + true if the current set is equal to other; otherwise, false. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in the current set, in the specified collection, or in both. + The collection to compare to the current set. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the default value of T when the search yielded no match. + A value indicating whether the search was successful. + + + Gets the comparer used by this set. + + + Gets the number of values contained in the set. + + + Gets an empty . + + + Gets a collection containing the values in the set. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the values of a . + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an immutable collection of key/value pairs. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of keys in the dictionary. + The type of values in the dictionary. + + + Adds an element with the specified key and value to the dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether the immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Represents a list of elements that cannot be modified. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Makes a copy of the list, and adds the specified object to the end of the copied list. + The object to add to the list. + A new list with the object added. + + + Makes a copy of the list and adds the specified objects to the end of the copied list. + The objects to add to the list. + A new list with the elements added. + + + Creates a list with all the items removed, but with the same sorting and ordering semantics as this list. + An empty list that has the same sorting and ordering semantics as this instance. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the . This value can be null for reference types. + The zero-based starting indexes of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use to locate . + The zero-based index of the first occurrence of within the range of elements in the that starts at and contains number of elements if found; otherwise -1. + + + Inserts the specified element at the specified index in the immutable list. + The zero-based index at which to insert the value. + The object to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The zero-based index at which the new elements should be inserted. + The elements to insert. + A new immutable list that includes the specified elements. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to match . + Returns . + + + Removes the first occurrence of a specified object from this immutable list. + The object to remove from the list. + The equality comparer to use to locate . + A new list with the specified object removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes the specified object from the list. + The objects to remove from the list. + The equality comparer to use to determine if match any objects in the list. + A new immutable list with the specified objects removed, if matched objects in the list. + + + Removes a range of elements from the . + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + A new immutable list with the elements removed. + + + Returns a new list with the first matching element in the list replaced with the specified element. + The element to be replaced. + The element to replace the first occurrence of with. + The equality comparer to use for matching . + + does not exist in the list. + A new list that contains , even if is the same as . + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + A new list that contains the new element, even if the element at the specified location is the same as the new element. + + + Represents an immutable first-in, first-out collection of objects. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Returns a new queue with all the elements removed. + An empty immutable queue. + + + Removes the first element in the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue with the first element removed. This value is never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue with the specified element added. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a value that indicates whether this immutable queue is empty. + + if this queue is empty; otherwise, . + + + Represents a set of elements that can only be modified by creating a new instance of the set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored in the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable set contains a specified element. + The element to locate in the set. + + if the set contains the specified value; otherwise, . + + + Removes the elements in the specified collection from the current immutable set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains only elements that exist in this set and the specified set. + The collection to compare to the current . + A new immutable set that contains elements that exist in both sets. + + + Determines whether the current immutable set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a proper (strict) superset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Determines whether the set contains a specified value. + The value to search for. + The matching value from the set, if found, or equalvalue if there are no matches. + + if a matching value was found; otherwise, . + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Represents an immutable last-in-first-out (LIFO) collection. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns the element at the top of the immutable stack without removing it. + The stack is empty. + The element at the top of the stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets a value that indicates whether this immutable stack is empty. + + if this stack is empty; otherwise,. + + + Provides methods for creating an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Searches the sorted immutable array for a specified element using the default comparer and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The comparer implementation to use when comparing elements, or null to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The comparer to use when comparing elements for equality or to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + +-or- + + is , and is of a type that is not compatible with the elements of . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Creates an empty immutable array. + The type of elements stored in the array. + An empty immutable array. + + + Creates an immutable array that contains the specified object. + The object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified object. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The fourth object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array from the specified array of objects. + The array of objects to populate the array with. + The type of elements stored in the array. + An immutable array that contains the array of items. + + + Creates an immutable array with specified objects from another array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an immutable array with the specified objects from another immutable array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates a mutable array that can be converted to an without allocating new memory. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a mutable array that can be converted to an without allocating new memory. + The initial capacity of the builder. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a new populated with the specified items. + The elements to add to the array. + The type of element stored in the array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to pass to the selector mapping function. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to be passed to the selector mapping function. + The type of element to be stored in the target array. + An immutable array that contains the specified items. + + + Creates an immutable array from the specified collection. + The collection of objects to copy to the immutable array. + The type of elements contained in . + An immutable array that contains the specified collection of objects. + + + Creates an immutable array from the current contents of the builder's array. + The builder to create the immutable array from. + The type of elements contained in the immutable array. + An immutable array that contains the current contents of the builder's array. + + + Produce an immutable array of contents from specified elements. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Converts the span to an immutable array. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Represents an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored by the array. + + + Gets an empty immutable array. + + + Returns a copy of the original array with the specified item added to the end. + The item to be added to the end of the array. + A new array with the specified item added to the end. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Returns a new immutable array that contains the elements of this array cast to a different type. + The type of array element to return. + An immutable array that contains the elements of this array, cast to a different type. If the cast fails, returns an array whose property returns . + + + Creates a new read-only memory region over this immutable array. + The read-only memory representation of this immutable array. + + + Creates a new read-only span over this immutable array. + The read-only span representation of this immutable array. + + + Creates a over the portion of the current , beginning at a specified position for a specified length. + The index at which to begin the span. + The number of items in the span. + The representation of the . + + + Creates a span over the portion of the current based on the specified . + A range in the current . + A span representation of the . + + + Initializes a new instance of the struct by casting the underlying array to an array of type . + The type of array element to return. + The cast is illegal. + An immutable array instance with elements cast to the new type. + + + Initializes a new instance of the struct based on the contents of an existing instance, allowing a covariant static cast to efficiently reuse the existing array. + The array to initialize the array with. No copy is made. + The type of array element to return. + An immutable array instance with elements cast to the new type. + + + Returns an array with all the elements removed. + An array with all of the elements removed. + + + Determines whether the specified item exists in the array. + The item to search for. + + if the specified item was found in the array; otherwise . + + + Determines whether the specified item exists in the array. + The item to search for. + The equality comparer to use in the search. + If , is used. + + if an equal value was found in the array; otherwise. + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the contents of this array to the specified array starting at the specified destination index. + The array to copy to. + The index in where copying begins. + + + Copies the specified items in this array to the specified array at the specified starting index. + The index of this array where copying begins. + The array to copy to. + The index in where copying begins. + The number of elements to copy from this array. + + + Copies the elements of current to a . + The that is the destination of the elements copied from current . + + + Indicates whether specified array is equal to this array. + An object to compare with this object. + + if is equal to this array; otherwise, . + + + Determines if this array is equal to the specified object. + The to compare with this array. + + if this array is equal to ; otherwise, . + + + Returns an enumerator that iterates through the contents of the array. + An enumerator. + + + Returns a hash code for this instance. + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + Searches the array for the specified item. + The item to search for. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the item inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Gets a read-only reference to the element at the specified in the read-only list. + The zero-based index of the element to get a reference to. + A read-only reference to the element at the specified in the read-only list. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Filters the elements of this array to those assignable to the specified type. + The type to filter the elements of the sequence on. + An that contains elements from the input sequence of type of . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates whether two arrays are not equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are not equal; otherwise, . + + + Checks for inequality between two array. + The object to the left of the operator. + The object to the right of the operator. + + if the two arrays are not equal; otherwise, . + + + Returns an array with the first occurrence of the specified element removed from the array. If no match is found, the current array is returned. + The item to remove. + A new array with the item removed. + + + Returns an array with the first occurrence of the specified element removed from the array. + + If no match is found, the current array is returned. + The item to remove. + The equality comparer to use in the search. + A new array with the specified item removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the item at the specified index removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + A new array with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + A new list with the elements removed. + + + Removes the specified items from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The item to add to the list. + The new array that contains at the specified index. + + + Forms a slice out of the current starting at a specified index for a specified length. + The index at which to begin this slice. + The desired length for the slice. + An that consists of elements from the current , starting at . + + + Sorts the elements in the immutable array using the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the immutable array using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the entire using the specified . + The to use when comparing elements. + + is null. + The sorted list. + + + Sorts the specified elements in the immutable array using the specified comparer. + The index of the first element to sort. + The number of elements to include in the sort. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Throws in all cases. + The item to add to the end of the array. + + + Throws in all cases. + + + Throws in all cases. + The object to remove from the array. + Throws in all cases. + + + Returns an enumerator that iterates through the array. + The property returns . + An enumerator that can be used to iterate through the array. + + + Throws in all cases. + The index of the location to insert the item. + The item to insert. + + + Throws in all cases. + The index. + + + Copies this array to another array starting at the specified index. + The array to copy this array to. + The index in the destination array to start the copy operation. + + + Returns an enumerator that iterates through the immutable array. + The property returns . + An enumerator that iterates through the immutable array. + + + Throws in all cases. + The value to add to the array. + Thrown in all cases. + Throws in all cases. + + + Throws in all cases. + Thrown in all cases. + + + Throws in all cases. + The value to check for. + Throws in all cases. + + + Gets the value at the specified index. + The value to return the index of. + The value of the element at the specified index. + + + Throws in all cases. + Index that indicates where to insert the item. + The value to insert. + Thrown in all cases. + + + Throws in all cases. + The value to remove from the array. + Thrown in all cases. + + + Throws in all cases. + The index of the item to remove. + Thrown in all cases. + + + Returns a copy of the original array with the specified item added to the end. + The value to add to the end of the array. + A new array with the specified item added to the end. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the end of the array. + A new array with the elements added to the end. + + + Returns an array with all the elements removed. + An array with all the elements removed. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the specified value inserted. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new array with the specified values inserted. + + + Returns an array with the first occurrence of the specified element removed from the array; if no match is found, the current array is returned. + The value to remove from the array. + The equality comparer to use in the search. + A new array with the value removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the specified item removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The value to add to the list. + The new array that contains at the specified index. + + + Determines whether the current collection element precedes, occurs in the same position as, or follows another element in the sort order. + The element to compare with the current instance. + The object used to compare members of the current array with the corresponding members of other array. + The arrays are not the same length. + An integer that indicates whether the current element precedes, is in the same position or follows the other element. + + + Determines whether this array is structurally equal to the specified array. + The array to compare with the current instance. + An object that determines whether the current instance and other are structurally equal. + + if the two arrays are structurally equal; otherwise, . + + + Returns a hash code for the current instance. + An object that computes the hash code of the current object. + The hash code for the current instance. + + + Creates a mutable array that has the same contents as this array and can be efficiently mutated across multiple operations using standard mutable interfaces. + The new builder with the same contents as this array. + + + Gets a value indicating whether this array was declared but not initialized. + + if the is ; otherwise, . + + + Gets a value indicating whether this is empty or is not initialized. + + if the is or ; otherwise, . + + + Gets a value indicating whether this is empty. + + if the is empty; otherwise, . + + + Gets the element at the specified index in the immutable array. + The zero-based index of the element to get. + The element at the specified index in the immutable array. + + + Gets the number of elements in the array. + The number of elements in the array. + + + Gets the number of items in the collection. + The property returns . + Number of items in the collection. + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the element at the specified index in the read-only list. + The zero-based index of the element to get. + Always thrown from the setter. + The property returns . + The element at the specified index in the read-only list. + + + Gets the number of items in the collection. + The property returns . + The number of items in the collection. + + + Gets the element at the specified index. + The index. + The property returns . + The element. + + + Gets the size of the array. + The property returns . + The number of items in the collection. + + + See the interface. Always returns since since immutable collections are thread-safe. + Boolean value determining whether the collection is thread-safe. + + + Gets the sync root. + An object for synchronizing access to the collection. + + + Gets a value indicating whether this instance is fixed size. + + if this instance is fixed size; otherwise, . + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Always thrown from the setter. + The property returns . + The object at the specified index. + + + A writable array accessor that can be converted into an instance without allocating extra memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the array. + The object to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + The type that derives from the type of item already in the array. + + + Removes all items from the array. + + + Determines whether the array contains a specific value. + The object to locate in the array. + + if the object is found; otherwise, . + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the current contents to the specified array. + The array to copy to. + The index to start the copy operation. + + + Copies the contents of this array to the specified array. + The index into this collection of the first element to copy. + The array to copy to. + The index into the destination array to which the first copied element is written. + The number of elements to copy. + + + Copies the current contents to the specified . + The to copy to. + + + Returns the current contents as an and sets the collection to a zero length array. + An immutable array. + + + Gets an object that can be used to iterate through the collection. + An object that can be used to iterate through the collection. + + + Determines the index of a specific item in the array. + The item to locate in the array. + The index of if it's found in the list; otherwise, -1. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The index of if it's found in the list; otherwise, -1. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + If , is used. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The number of elements to search. + The index of if it's found in the list; otherwise, -1. + + + Determines the index for the specified item. + The item to locate in the array. + The index at which to begin the search. + The starting position of the search. + The equality comparer to use in the search. + The index of if it's found in the list; otherwise, -1. + + + Inserts an item in the array at the specified index. + The zero-based index at which to insert the item. + The object to insert into the array. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Gets a read-only reference to the element at the specified index. + The item index. + + is greater or equal to the array count. + The read-only reference to the element at the specified index. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The 0-based index where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Extracts the internal array as an and replaces it with a zero length array. + When doesn't equal . + An immutable array containing the elements of the builder. + + + Removes the specified element. + The item to remove. + + if was found and removed; otherwise, . + + + Removes the first occurrence of the specified element from the builder. + If no match is found, the builder remains unchanged. + The element to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + + + Removes the item at the specified index from the array. + The zero-based index of the item to remove. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified values from this list. + The 0-based index into the array for the element to omit from the returned array. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + + + Reverses the order of elements in the collection. + + + Sorts the contents of the array. + + + Sorts the contents of the array. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Sorts the elements in the entire array using the specified . + The to use when comparing elements. + + is null. + + + Sorts the contents of the array. + The starting index for the sort. + The number of elements to include in the sort. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Creates a new array with the current contents of this . + A new array with the contents of this . + + + Returns an immutable array that contains the current contents of this . + An immutable array that contains the current contents of this . + + + Gets or sets the length of the internal array. When set, the internal array is reallocated to the given capacity if it is not already the specified length. + The length of the internal array. + + + Gets or sets the number of items in the array. + The number of items in the array. + + + Gets or sets the item at the specified index. + The index of the item to get or set. + The specified index is not in the array. + The item at the specified index. + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + An array enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances to the next value in the array. + + if another item exists in the array; otherwise, . + + + Gets the current item. + The current item. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Determines whether the specified immutable dictionary contains the specified key/value pair. + The immutable dictionary to search. + The key to locate in the immutable dictionary. + The value to locate on the specified key, if the key is found. + The type of the keys in the immutable dictionary. + The type of the values in the immutable dictionary. + + if this map contains the specified key/value pair; otherwise, . + + + Creates an empty immutable dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates a new immutable dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary that contains the specified items. + The items used to populate the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The comparer implementation to use to compare values for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The type of the key. + The type of the value. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The type of the key. + The type of the value. + The value for the key, or if no matching key was found. + + + Constructs an immutable dictionary from an existing collection of elements, applying a transformation function to the source keys. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Constructs an immutable dictionary based on some transformation of a sequence. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The key comparer to use for the dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable dictionary from the current contents of the builder's dictionary. + The builder to create the immutable dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Represents an immutable, unordered collection of keys and values. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the keys in the dictionary. + The type of the values in the dictionary. + + + Gets an empty immutable dictionary. + + + Adds an element with the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the immutable dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified key. + The key to locate. + + if the immutable dictionary contains an element with the specified key; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the immutable dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the immutable dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the additional key/value pair. + + + See the interface. + Sequence of key/value pairs to be added to the dictionary. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key-value comparison rules as this dictionary instance. + The immutable dictionary instance. + + + See the interface. + Key of the entry to be removed. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + See the interface. + Sequence of keys to be removed. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + See the interface. + Key of entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the specified key/value pair. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + The key-value pairs to set on the map. Any keys that conflict with existing keys will replace the previous values. + A copy of the immutable dictionary with updated key-value pairs. + + + Creates an immutable dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Gets an instance of the immutable dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The type of the key. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable dictionary. + The key comparer. + + + Gets the keys in the immutable dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The type of the key. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable dictionary. + The values in the immutable dictionary. + + + Represents a hash map that mutates with little or no memory allocations and that can produce or build on immutable hash map instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + + is null. + An element with the same key already exists in the dictionary. + The dictionary is read-only. + + + Adds the specified item to the immutable dictionary. + The object to add to the dictionary. + The dictionary is read-only. + + + Adds a sequence of values to this collection. + The items to add to this collection. + + + Removes all items from the immutable dictionary. + The dictionary is read-only. + + + Determines whether the immutable dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified key. + The key to locate in the dictionary. + + is null. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified value. + The value to locate in the immutable dictionary. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the collection. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + + is null. + The dictionary is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the dictionary. + + + Removes the first occurrence of a specific object from the immutable dictionary. + The object to remove from the dictionary. + The dictionary is read-only. + + if was successfully removed from the dictionary; otherwise, . This method also returns false if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable dictionary. + The keys for entries to remove from the dictionary. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array of type that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable dictionary based on the contents of this instance. + An immutable dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Returns the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, returns the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the immutable dictionary contains an element with the specified key; otherwise, . + + + Gets the number of elements contained in the immutable dictionary. + The number of elements contained in the immutable dictionary. + + + Gets or sets the element with the specified key. + The element to get or set. + + is . + The property is being retrieved, and is not found. + The property is being set, and the is read-only. + The element that has the specified key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a collection that contains the keys of the immutable dictionary. + A collection that contains the keys of the object that implements the immutable dictionary. + + + Gets a value that indicates whether the collection is read-only. + + if the collection is read-only; otherwise, . + + + Gets a collection containing the keys of the generic dictionary. + A collection containing the keys of the object that implements the generic dictionary. + + + Gets a collection containing the values in the generic dictionary. + A collection containing the values in the object that implements the generic dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + Value stored under specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of the immutable dictionary without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable dictionary. + The dictionary was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the dictionary. + The dictionary was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element in the dictionary at the current position of the enumerator. + + + Gets the current element. + Current element in enumeration. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable hash set. + The type of items to be stored in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the specified array of items. + An array that contains the items to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates an empty immutable hash set that uses the specified equality comparer. + The object to use for comparing objects in the set for equality. + The type of items in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the items in the specified collection and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + An array that contains the items to prepopulate the hash set with. + The type of items stored in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The equality comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable collection prefilled with the specified items. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable hash set builder. + The type of items stored by the collection. + The immutable hash set builder. + + + Creates a new immutable hash set builder. + The object to use for comparing objects in the set for equality. + The type of items stored by the collection. + The new immutable hash set builder. + + + Creates a new immutable hash set prefilled with the specified items. + The items to add to the hash set. + The type of items stored by the collection. + The new immutable hash set that contains the specified items. + + + Creates a new immutable hash set that contains the specified items and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The items add to the collection before immutability is applied. + The type of items stored in the collection. + The new immutable hash set. + + + Enumerates a sequence and produces an immutable hash set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable hash set of its contents, and uses the specified equality comparer for the set type. + The sequence to enumerate. + The object to use for comparing objects in the set for equality. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence and uses the specified equality comparer. + + + Creates an immutable hash set from the current contents of the builder's set. + The builder to create the immutable hash set from. + The type of the elements in the hash set. + An immutable hash set that contains the current contents in the builder's set. + + + Represents an immutable, unordered hash set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the hash set. + + + Gets an immutable hash set for this type that uses the default . + + + Adds the specified element to the hash set. + The element to add to the set. + A hash set that contains the added value and any values previously held by the object. + + + Retrieves an empty immutable hash set that has the same sorting and ordering semantics as this instance. + An empty hash set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable hash set contains the specified element. + The object to locate in the immutable hash set. + + if is found in the ; otherwise, . + + + Removes the elements in the specified collection from the current immutable hash set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Determines whether the current immutable hash set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable hash set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable hash set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable hash set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Adds an item to the set. + The object to add to the set. + The set is read-only. + + + Removes all items from this set. + The set is read-only. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + + if the element is successfully removed; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that iterates through the collection. + + + Adds an element to the current set and returns a value that indicates whether the element was successfully added. + The element to add to the collection. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current collection. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or in the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a set. + An enumerator that can be used to iterate through the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting or ordering semantics as this instance. + + + Removes the elements in the specified collection from the current set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates an immutable hash set that has the same contents as this set and can be efficiently mutated across multiple operations by using standard mutable interfaces. + A set with the same contents as this set that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Creates a new immutable hash set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable hash set with the items added; or the original set if all the items were already in the set. + + + Gets an instance of the immutable hash set that uses the specified equality comparer for its search methods. + The equality comparer to use. + An instance of this immutable hash set that uses the given comparer. + + + Gets the number of elements in the immutable hash set. + The number of elements in the hash set. + + + Gets a value that indicates whether the current immutable hash set is empty. + + if this instance is empty; otherwise, . + + + Gets the object that is used to obtain hash codes for the keys and to check the equality of values in the immutable hash set. + The comparer used to obtain hash codes for the keys and check equality. + + + See the interface. + + if the is read-only; otherwise, . + + + See the interface. + + if access to the is synchronized (thread safe); otherwise, . + + + See . + An object that can be used to synchronize access to the . + + + Represents a hash set that mutates with little or no memory allocations and that can produce or build on immutable hash set instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the immutable hash set. + The item to add. + + if the item did not already belong to the collection; otherwise, . + + + Removes all items from the immutable hash set. + The hash set is read-only. + + + Determines whether the immutable hash set contains a specific value. + The object to locate in the hash set. + + if is found in the hash set ; otherwise, . + + + Removes all elements in the specified collection from the current hash set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the immutable hash set. + An enumerator that can be used to iterate through the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of a specific object from the immutable hash set. + The object to remove from the set. + The set is read-only. + + if was successfully removed from the set ; otherwise, . This method also returns if is not found in the original set. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an item to the hash set. + The object to add to the set. + The set is read-only. + + + Copies the elements of the hash set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the hash set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current set. + + + Gets the number of elements contained in the immutable hash set. + The number of elements contained in the immutable hash set. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Enumerates the contents of the immutable hash set without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable hash set. + The hash set was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the hash set. + + + Sets the enumerator to its initial position, which is before the first element in the hash set. + The hash set was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Gets the current element. + The element in the collection at the current position of the enumerator. + + + Contains interlocked exchange mechanisms for immutable collections. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The value to use if no previous value exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The function that receives the key and returns a new value to add to the dictionary when no value previously exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Atomically enqueues an element to the end of a queue. + The variable or field to atomically update. + The value to enqueue. + The type of items contained in the collection. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified key is not in the dictionary. + The key for the value to get or add. + The value to add to the dictionary the key is not found. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. This delegate will not be invoked more than once. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. + The argument to pass to the value factory. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The type of the argument supplied to the value factory. + The value at the specified key or if the key was not present. + + + Compares two immutable arrays for equality and, if they are equal, replaces one of the arrays. + The destination, whose value is compared with and possibly replaced. + The value that replaces the destination value if the comparison results in equality. + The value that is compared to the value at . + The type of element stored by the array. + The original value in . + + + Sets an array to the specified array and returns a reference to the original array, as an atomic operation. + The array to set to the specified value. + The value to which the parameter is set. + The type of element stored by the array. + The original value of . + + + Sets an array to the specified array if the array has not been initialized. + The array to set to the specified value. + The value to which the parameter is set, if it's not initialized. + The type of element stored by the array. + + if the array was assigned the specified value; otherwise, . + + + Pushes a new element onto the stack. + The stack to update. + The value to push on the stack. + The type of items in the stack. + + + Adds the specified key and value to the dictionary if the key is not in the dictionary. + The dictionary to update with the specified key and value. + The key to add, if is not already defined in the dictionary. + The value to add. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key is not in the dictionary; otherwise, . + + + Atomically removes and returns the specified element at the head of the queue, if the queue is not empty. + The variable or field to atomically update. + Set to the value from the head of the queue, if the queue not empty. + The type of items in the queue. + + if the queue is not empty and the head element is removed; otherwise, . + + + Removes an element from the top of the stack, if there is an element to remove. + The stack to update. + Receives the value removed from the stack, if the stack is not empty. + The type of items in the stack. + + if an element is removed from the stack; otherwise, . + + + Removes the element with the specified key, if the key exists. + The dictionary to update. + The key to remove. + Receives the value of the removed item, if the dictionary is not empty. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key was found and removed; otherwise, . + + + Sets the specified key to the specified value if the specified key already is set to a specific value. + The dictionary to update. + The key to update. + The new value to set. + The current value for in order for the update to succeed. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if and are present in the dictionary and comparison was updated to ; otherwise, . + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data in the immutable array. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data in the immutable array. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable list. + The type of items to be stored in the . + An empty immutable list. + + + Creates a new immutable list that contains the specified item. + The item to prepopulate the list with. + The type of items in the . + A new that contains the specified item. + + + Creates a new immutable list that contains the specified array of items. + An array that contains the items to prepopulate the list with. + The type of items in the . + A new immutable list that contains the specified items. + + + Creates a new immutable list that contains the items from the specified span of items. + A span that contains the items to prepopulate the list with. + The type of items stored by the collection. + A new immutable list that contains the specified items. + + + Creates a new immutable list builder. + The type of items stored by the collection. + The immutable collection builder. + + + Creates a new immutable list that contains the specified items. + The items to add to the list. + The type of items in the . + An immutable list that contains the specified items. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Removes the specified value from this list. + The list to search. + The value to remove. + The type of items in the list. + A new immutable list with the element removed, or this list if the element is not in this list. + + + Removes the specified values from this list. + The list to search. + The items to remove if matches are found in this list. + The type of items in the list. + A new immutable list with the elements removed. + + + Replaces the first equal element in the list with the specified element. + The list to search. + The element to replace. + The element to replace the old element with. + The type of items in the list. + + does not exist in the list. + The new list -- even if the value being replaced is equal to the new value for that position. + + + Enumerates a sequence and produces an immutable list of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable list that contains the items in the specified sequence. + + + Creates an immutable list from the current contents of the builder's collection. + The builder to create the immutable list from. + The type of the elements in the list. + An immutable list that contains the current contents in the builder's collection. + + + Represents an immutable list, which is a strongly typed list of objects that can be accessed by index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Gets an empty immutable list. + + + Adds the specified object to the end of the immutable list. + The object to add. + A new immutable list with the object added. + + + Adds the elements of the specified collection to the end of the immutable list. + The collection whose elements will be added to the end of the list. + A new immutable list with the elements added. + + + Searches the entire sorted list for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be for reference types. + The default comparer cannot find a comparer implementation of the for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches the entire sorted list for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements or null to use the default comparer. + comparer is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches a range of elements in the sorted list for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements, or to use the default comparer. + index is less than 0 or is less than 0. + index and do not denote a valid range in the list. + + is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted list, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Removes all elements from the immutable list. + An empty list that retains the same sort or unordered semantics that this instance has. + + + Determines whether this immutable list contains the specified value. + The value to locate. + + if the list contains the specified value; otherwise, . + + + Converts the elements in the current immutable list to another type, and returns a list containing the converted elements. + A delegate that converts each element from one type to another type. + The type of the elements of the target array. + A list of the target type containing the converted elements from the current . + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Copies a range of elements from the immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list that contains all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Performs the specified action on each element of the immutable list. + The delegate to perform on each element of the immutable list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the immutable list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the entire immutable list, if found; otherwise, ?1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the list that starts at the specified index and contains the specified number of elements. + The object to locate in the list The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the first occurrence of item within the range of elements in the list that starts at index and contains count number of elements, if found; otherwise, -1. + + + Inserts the specified object into the immutable list at the specified index. + The zero-based index at which to insert the object. + The object to insert. + The new immutable list after the object is inserted. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which to insert the elements. + The collection whose elements should be inserted. + The new immutable list after the elements are inserted. + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + + is negative or not less than . + A read-only reference to the element at the given position. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the list that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the last occurrence of item within the range of elements in the list that contains count number of elements and ends at index, if found; otherwise, -1. + + + Removes the first occurrence of the specified object from this immutable list. + The object to remove. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes the first occurrence of the object that matches the specified value from this immutable list. + The value of the element to remove from the list. + The equality comparer to use in the search. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The new list with the elements removed. + + + Removes the element at the specified index. + The zero-based index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list. + The collection whose elements should be removed if matches are found in this list. + A new list with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes a range of elements, starting from the specified index and containing the specified number of elements, from this immutable list. + The starting index to begin removal. + The number of elements to remove. + A new list with the elements removed. + + + Replaces the specified element in the immutable list with a new element. + The element to replace. + The element to replace with. + + does not exist in the immutable list. + The new list with the replaced element, even if it is equal to the old element. + + + Replaces the specified element in the immutable list with a new element. + The element to replace in the list. + The element to replace with. + The comparer to use to check for equality. + A new list with the object replaced, or this list if the specified object is not in this list. + + + Reverses the order of the elements in the entire immutable list. + The reversed list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + The reversed list. + + + Replaces an element at a given position in the immutable list with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list with the replaced element, even if it is equal to the old element at that position. + + + Sorts the elements in the entire immutable list using the default comparer. + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The delegate to use when comparing elements. + + is . + The sorted list. + + + Sorts a range of elements in the immutable list using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Adds the specified item to the immutable list. + The item to add. + Always thrown. + + + Removes all items from the immutable list. + + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove. + Always thrown. + + if was successfully removed from the list; otherwise, . This method also returns if is not found in the original list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Inserts an object in the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert. + + + + Removes the value at the specified index. + The zero-based index of the item to remove. + + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from immutable list. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Adds an item to the immutable list. + The object to add to the list. + Always thrown. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the list. + + + Removes all items from the immutable list. + Always thrown. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + + if the object is found in the list; otherwise, . + + + Determines the index of a specific item in the immutable list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item into the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + Always thrown. + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + Always thrown. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove. + Always thrown. + + + Adds the specified value to this immutable list. + The value to add. + A new list with the element added. + + + Adds the specified values to this immutable list. + The values to add. + A new list with the elements added. + + + Retrieves an empty list that has the same sorting and ordering semantics as this instance. + An empty list that has the same sorting and ordering semantics as this instance. + + + Inserts the specified element at the specified index in the immutable list. + The index at which to insert the value. + The element to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The index at which to insert the elements. + The elements to insert. + A new immutable list that includes the specified elements. + + + Removes the element with the specified value from the list. + The value of the element to remove from the list. + The comparer to use to compare elements for equality. + A new with the specified element removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list that match the items specified. + The range of items to remove from the list, if found. + The equality comparer to use to compare elements. + + or is . + An immutable list with the items removed. + + + Removes the specified number of elements at the specified location from this list. + The starting index of the range of elements to remove. + The number of elements to remove. + A new list with the elements removed. + + + Replaces an element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + + does not exist in the list. + The new list. + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list. + + + Creates a list that has the same contents as this list and can be efficiently mutated across multiple operations using standard mutable interfaces. + The created list with the same contents as this list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements contained in the list. + The number of elements in the list. + + + Gets a value that indicates whether this list is empty. + + if the list is empty; otherwise, . + + + Gets the element at the specified index of the list. + The index of the element to retrieve. + In a get operation, is negative or not less than . + The element at the specified index. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the value at the specified index. + The zero-based index of the item to access. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + Value stored in the specified index. + + + This type is immutable, so it is always thread-safe. See the interface. + Boolean value determining whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value indicating whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + The value at the specified index. + + + Represents a list that mutates with little or no memory allocations and that can produce or build on immutable list instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an item to the immutable list. + The item to add to the list. + + + Adds a series of elements to the end of this list. + The elements to add to the end of the list. + + + Searches the entire for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the entire for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the specified range of the for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is less than 0. +-or- + + is less than 0. + + and do not denote a valid range in the . + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Removes all items from the immutable list. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + if item is found in the list; otherwise, . + + + Creates a new immutable list from the list represented by this builder by using the converter function. + The converter function. + The type of the output of the delegate converter function. + A new immutable list from the list represented by this builder. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list containing all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Performs the specified action on each element of the list. + The delegate to perform on each element of the list. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the range of elements in the immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Inserts an item to the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the immutable list. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the immutable list. The collection itself cannot be , but it can contain elements that are null, if type T is a reference type. + + + Gets a read-only reference to the value for a given into the list. + The index of the desired element. + A read-only reference to the value at the specified . + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the last occurrence of within the entire immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that extends from the first element to , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that contains number of elements and ends at , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + + if item was successfully removed from the list; otherwise, . This method also returns if item is not found in the list. + + + Removes the first occurrence matching the specified value from this list. + The item to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The number of elements removed from the immutable list. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove from the list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified range of values from this list. + The starting index to begin removal. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The old value does not exist in the list. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + The old value does not exist in the list. + + + Reverses the order of the elements in the entire immutable list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + + + Sorts the elements in the entire immutable list by using the default comparer. + + + Sorts the elements in the entire immutable list by using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + + + Sorts the elements in the entire immutable list by using the specified comparison object. + The object to use when comparing elements. + + is . + + + Sorts the elements in a range of elements in the immutable list by using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the list to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an item to the list. + The object to add to the list. + + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the list. + + + + Determines whether the list contains a specific value. + The object to locate in the list. + + + if the is found in the list; otherwise, . + + + Determines the index of a specific item in the list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item to the list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + + + + Removes the first occurrence of a specific object from the list. + The object to remove from the list. + + + + Creates an immutable list based on the contents of this instance. + An immutable list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements in this immutable list. + The number of elements in this list. + + + Gets or sets the value for a given index in the list. + The index of the item to get or set. + The value at the specified index. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + The object at the specified index. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances enumeration to the next element of the immutable list. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the list. + + + Sets the enumerator to its initial position, which is before the first element in the immutable list. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable queue. + The type of items to be stored in the immutable queue. + An empty immutable queue. + + + Creates a new immutable queue that contains the specified item. + The item to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified item. + + + Creates a new immutable queue that contains the specified array of items. + An array that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified array of items. + A span that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified items. + The items to add to the queue before immutability is applied. + The type of elements in the queue. + An immutable queue that contains the specified items. + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + The queue to remove the item from. + When this method returns, contains the item from the beginning of the queue. + The type of elements in the immutable queue. + The stack is empty. + The new queue with the item removed. + + + Represents an immutable queue. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Removes all objects from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + When this method returns, contains the element from the beginning of the queue. + The queue is empty. + The new immutable queue with the beginning element removed. + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Returns an enumerator that iterates through the immutable queue. + An enumerator that can be used to iterate through the queue. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a read-only reference to the element at the front of the queue. + The queue is empty. + Read-only reference to the element at the front of the queue. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Gets an empty immutable queue. + An empty immutable queue. + + + Gets a value that indicates whether this immutable queue is empty. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if this queue is empty; otherwise, . + + + Enumerates the contents of an immutable queue without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable queue. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the queue. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates a new immutable sorted dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key comparer. + The comparer implementation to use to evaluate keys for equality and sorting. + The items to add to the sorted dictionary. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + The new immutable sorted dictionary that contains the specified items and uses the specified key comparer. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key and value comparers. + The comparer implementation to use to compare keys for equality and sorting. + The comparer implementation to use to compare values for equality. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items and uses the specified comparers. + + + Creates an immutable sorted dictionary that contains the specified items and uses the default comparer. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable sorted dictionary from the current contents of the builder's dictionary. + The builder to create the immutable sorted dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Represents an immutable sorted dictionary. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the key contained in the dictionary. + The type of the value contained in the dictionary. + + + Gets an empty immutable sorted dictionary. + + + Adds an element with the specified key and value to the immutable sorted dictionary. + The key of the entry to add. + The value of entry to add. + The given key already exists in the dictionary but has a different value. + A new immutable sorted dictionary that contains the additional key/value pair. + + + Adds the specific key/value pairs to the immutable sorted dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable sorted dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable sorted dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether this immutable sorted map contains the specified key. + The key to locate. + + if the immutable dictionary contains the specified key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified value from the immutable sorted dictionary. + The value of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified value cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable sorted dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable sorted dictionary, possibly overwriting an existing value for the given key. + The key of the entry to add. + The key value to set. + A new immutable sorted dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable sorted dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + An immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the generic dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + The instance. + + + See the interface. + Sequence of key/value pairs to be added. + The instance. + + + See the interface. + The instance. + + + See the interface. + Key of entry to be removed. + The instance. + + + See the interface. + Sequence of keys to be removed. + The instance. + + + See the interface. + Key of entry to be updated. + Value of entry to be updated. + The instance. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + A set of key-value pairs to set on the map. + The instance. + + + Creates an immutable sorted dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. + + if the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets an instance of the immutable sorted dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable sorted dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable sorted dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable sorted dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The key to retrieve the value for. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable sorted dictionary. + The key comparer for the dictionary. + + + Gets the keys in the immutable sorted dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The object to use as the key of the element to access. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to be accessed. + Value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable sorted dictionary. + The values in the dictionary. + + + Represents a sorted dictionary that mutates with little or no memory allocations and that can produce or build on immutable sorted dictionary instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable sorted dictionary. + The key of the element to add. + The value of the element to add. + + + Adds the specified item to the immutable sorted dictionary. + The object to add to the dictionary. + + + Adds a sequence of values to the immutable sorted dictionary. + The items to add to the dictionary. + + + Removes all items from the immutable sorted dictionary. + + + Determines whether the immutable sorted dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate in the dictionary. The value can be for reference types. + + if the immutable sorted dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable sorted dictionary. + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original dictionary. + + + Removes the first occurrence of a specific object from the immutable sorted dictionary. + The object to remove from the dictionary. + + if was successfully removed from the dictionary; otherwise, . This method also returns if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable sorted dictionary. + The keys for entries to remove from the dictionary. + + + See . + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + See . + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable sorted dictionary based on the contents of this instance. + An immutable sorted dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets the number of elements in this immutable sorted dictionary. + The number of elements in this dictionary. + + + Gets or sets the value for a specified key in the immutable sorted dictionary. + The key to retrieve the value for. + The value associated with the given key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a strongly typed, read-only collection of elements. + A strongly typed, read-only collection of elements. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Returns a collection containing all keys stored in the dictionary. See . + A collection containing all keys stored in the dictionary. + + + Returns a collection containing all values stored in the dictionary. See . + A collection containing all values stored in the dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value associated with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable sorted dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable sorted dictionary. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted dictionary. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted set. + The type of items to be stored in the immutable set. + An empty immutable sorted set. + + + Creates a new immutable sorted set that contains the specified item. + The item to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates an empty immutable sorted set that uses the specified comparer. + The implementation to use when comparing items in the set. + The type of items in the immutable set. + An empty immutable set. + + + Creates a new immutable sorted set that contains the specified item and uses the specified comparer. + The implementation to use when comparing items in the set. + The item to prepopulate the set with. + The type of items stored in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items and uses the specified comparer. + The implementation to use when comparing items in the set. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable sorted set that contains the specified array of items. + A span that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Returns a collection that can be used to build an immutable sorted set. + The type of items stored by the collection. + The immutable collection builder. + + + Returns a collection that can be used to build an immutable sorted set. + The comparer used to compare items in the set for equality. + The type of items stored by the collection. + The immutable collection. + + + Creates a new immutable collection that contains the specified items. + The comparer to use to compare elements in this set. + The items to add to the set before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Creates a new immutable collection that contains the specified items. + The items to add to the set with before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Enumerates a sequence and produces an immutable sorted set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable sorted set of its contents, and uses the specified comparer. + The sequence to enumerate. + The comparer to use for initializing and adding members to the sorted set. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Creates an immutable sorted set from the current contents of the builder's set. + The builder to create the immutable sorted set from. + The type of the elements in the immutable sorted set. + An immutable sorted set that contains the current contents in the builder's set. + + + Represents an immutable sorted set implementation. + +NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the set. + + + Gets an empty immutable sorted set. + + + Adds the specified value to this immutable sorted set. + The value to add. + A new set with the element added, or this set if the element is already in this set. + + + Removes all elements from the immutable sorted set. + An empty set with the elements removed. + + + Determines whether this immutable sorted set contains the specified value. + The value to check for. + + if the set contains the specified value; otherwise, . + + + Removes a specified set of items from this immutable sorted set. + The items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the immutable sorted set. + An enumerator that can be used to iterate through the set. + + + Gets the position within this immutable sorted set that the specified value appears in. + The value whose position is being sought. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, this method returns a negative number that is the bitwise complement of the index of the first element that is larger than value. If is not found and is greater than any of the elements in the set, this method returns a negative number that is the bitwise complement of the index of the last element plus 1. + + + Creates an immutable sorted set that contains elements that exist both in this set and in the specified set. + The set to intersect with this one. + A new immutable sorted set that contains any elements that exist in both sets. + + + Determines whether the current immutable sorted set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a proper superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current immutable sorted set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference of the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference of the element at the given position. + + + Determines whether the current immutable sorted set and a specified collection share common elements. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the specified value from this immutable sorted set. + The element to remove. + A new immutable sorted set with the element removed, or this set if the element was not found in the set. + + + Returns an that iterates over this immutable sorted set in reverse order. + An enumerator that iterates over the immutable sorted set in reverse order. + + + Determines whether the current immutable sorted set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable sorted set that contains elements that exist either in this set or in a given sequence, but not both. + The other sequence of items. + The new immutable sorted set. + + + Adds the specified value to the collection. + The value to add. + + + Removes all the items from the collection. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the collection. + The object to remove from the collection. + + if was successfully removed from the collection; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Inserts an item in the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + + + Removes the item at the specified index. + The zero-based index of the item to remove. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Adds an item to the set. + The object to add to the set. + The set is read-only or has a fixed size. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the set. + Thrown in all cases. + + + Determines whether the set contains a specific value. + The object to locate in the set. + + if the object is found in the set; otherwise, . + + + Determines the index of a specific item in the set. + The object to locate in the set. + The index of if found in the list; otherwise, -1. + + + Inserts an item into the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + The set is read-only or has a fixed size. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + The set is read-only or has a fixed size. + + + Removes the item at the specified index of the set. + The zero-based index of the item to remove. + The set is read-only or has a fixed size. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Removes the elements in the specified collection from the current immutable set. + The items to remove from this set. + The new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates a collection that has the same contents as this immutable sorted set that can be efficiently manipulated by using standard mutable interfaces. + The sorted set builder. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Adds a given set of items to this immutable sorted set. + The items to add. + The new set with the items added; or the original set if all the items were already in the set. + + + Returns the immutable sorted set that has the specified key comparer. + The comparer to check for. + The immutable sorted set that has the specified key comparer. + + + Gets the number of elements in the immutable sorted set. + The number of elements in the immutable sorted set. + + + Gets a value that indicates whether this immutable sorted set is empty. + + if this set is empty; otherwise, . + + + Gets the element of the immutable sorted set at the given index. + The index of the element to retrieve from the sorted set. + The element at the given index. + + + Gets the comparer used to sort keys in the immutable sorted set. + The comparer used to sort keys. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Returns true, since immutable collections are always read-only. See the interface. + A boolean value indicating whether the collection is read-only. + + + See the interface. + The zero-based index of the item to access. + The element stored at the specified index. + + + Returns true, since immutable collections are always thread-safe. See the interface. + A boolean value indicating whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + + The . + + + Represents a sorted set that enables changes with little or no memory allocations, and efficiently manipulates or builds immutable sorted sets. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements from this set. + + + Determines whether the set contains the specified object. + The object to locate in the set. + + if is found in the set; otherwise, . + + + Removes the specified set of items from the current set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the set. + A enumerator that can be used to iterate through the set. + + + Searches for the first index within this set that the specified value is contained. + The value to locate within the set. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, returns a negative number that is the bitwise complement of the index of the first element that's larger than . If is not found and is greater than any of the elements in the set, returns a negative number that is the bitwise complement of (the index of the last element plus 1). + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection is compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference to the element at the given position. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of the specified object from the set. + The object to remove from the set. + + if was removed from the set; if was not found in the set. + + + Returns an enumerator that iterates over the immutable sorted set in reverse order. + An enumerator that iterates over the set in reverse order. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Creates an immutable sorted set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current state. + + + Gets the number of elements in the immutable sorted set. + The number of elements in this set. + + + Gets the element of the set at the given index. + The 0-based index of the element in the set to return. + The element at the given position. + + + Gets or sets the object that is used to determine equality for the values in the immutable sorted set. + The comparer that is used to determine equality for the values in the set. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread-safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Advances the enumerator to the next element of the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted set. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Gets the element at the current position of the enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable stack. + The type of items to be stored in the immutable stack. + An empty immutable stack. + + + Creates a new immutable stack that contains the specified item. + The item to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable collection that contains the specified item. + + + Creates a new immutable stack that contains the specified array of items. + An array that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified array of items. + A span that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified items. + The items to add to the stack before it's immutable. + The type of items in the stack. + An immutable stack that contains the specified items. + + + Removes the specified item from an immutable stack. + The stack to modify. + The item to remove from the stack. + The type of items contained in the stack. + The stack is empty. + A stack; never . + + + Represents an immutable stack. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element on the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns an enumerator that iterates through the immutable stack. + An enumerator that can be used to iterate through the stack. + + + Returns the object at the top of the stack without removing it. + The stack is empty. + The object at the top of the stack. + + + Gets a read-only reference to the element on the top of the stack. + The stack is empty. + A read-only reference to the element on the top of the stack. + + + Removes the element at the top of the immutable stack and returns the stack after the removal. + The stack is empty. + A stack; never . + + + Removes the specified element from the immutable stack and returns the stack after the removal. + The value to remove from the stack. + A stack; never . + + + Inserts an object at the top of the immutable stack and returns the new stack. + The object to push onto the stack. + The new stack. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable stack. + The empty immutable stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets an empty immutable stack. + An empty immutable stack. + + + Gets a value that indicates whether this instance of the immutable stack is empty. + + if this instance is empty; otherwise, . + + + Enumerates the contents of an immutable stack without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable stack. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the stack. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + LINQ extension method overrides that offer greater efficiency for than the standard LINQ methods + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + A function to be invoked on each element, in a cumulative way. + The type of element contained by the collection. + The final value after the cumulative function has been applied to all elements. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + The type of the accumulated value. + The type of element contained by the collection. + The final accumulator value. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + A function to transform the final accumulator value into the result type. + The type of the accumulated value. + The type of result returned by the result selector. + The type of element contained by the collection. + The final accumulator value. + + + Gets a value indicating whether all elements in this array match a given condition. + The array to check for matches. + The predicate. + The type of element contained by the collection. + + if every element of the source sequence passes the test in the specified predicate; otherwise, . + + + Returns a value indicating whether this collection contains any elements. + The builder to check for matches. + The type of elements in the array. + + if the array builder contains any elements; otherwise, . + + + Gets a value indicating whether the array contains any elements. + The array to check for elements. + The type of element contained by the collection. + + if the array contains an elements; otherwise, . + + + Gets a value indicating whether the array contains any elements that match a specified condition. + The array to check for elements. + The delegate that defines the condition to match to an element. + The type of element contained by the collection. + + if an element matches the specified condition; otherwise, . + + + Returns the element at a specified index in the array. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index. + + + Returns the element at a specified index in a sequence or a default value if the index is out of range. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index, or the default value if the index is not found. + + + Returns the first element in the collection. + The builder to retrieve an item from. + The type of items in the array. + If the array is empty. + The first item in the list. + + + Returns the first element in an array. + The array to get an item from. + The type of element contained by the collection. + If the array is empty. + The first item in the array. + + + Returns the first element in a sequence that satisfies a specified condition. + The array to get an item from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + If the array is empty. + The first item in the list if it meets the condition specified by . + + + Returns the first element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of the sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve elements from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the last element in the collection. + The builder to retrieve elements from. + The type of item in the builder. + The collection is empty. + The last element in the builder. + + + Returns the last element of the array. + The array to retrieve items from. + The type of element contained by the array. + The collection is empty. + The last element in the array. + + + Returns the last element of a sequence that satisfies a specified condition. + The array to retrieve elements from. + The delegate that defines the conditions of the element to retrieve. + The type of element contained by the collection. + The collection is empty. + The last element of the array that satisfies the condition. + + + Returns the last element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve an element from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Projects each element of a sequence into a new form. + The immutable array to select items from. + A transform function to apply to each element. + The type of element contained by the collection. + The type of the result element. + An whose elements are the result of invoking the transform function on each element of source. + + + Projects each element of a sequence to an , flattens the resulting sequences into one sequence, and invokes a result selector function on each element therein. + The immutable array. + A transform function to apply to each element of the input sequence. + A transform function to apply to each element of the intermediate sequence. + The type of the elements of . + The type of the intermediate elements collected by . + The type of the elements of the resulting sequence. + An whose elements are the result of invoking the one-to-many transform function on each element of and then mapping each of those sequence elements and their corresponding source element to a result element. + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence. + The array to retrieve the element from. + The type of element contained by the collection. + The element in the sequence. + + + Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists. + The immutable array to return a single element from. + The function to test whether an element should be returned. + The type of element contained by the collection. + Returns . + + + Returns the only element of the array, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence. + The array. + The type of element contained by the collection. + + contains more than one element. + The element in the array, or the default value if the array is empty. + + + Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition. + The array to get the element from. + The condition the element must satisfy. + The type of element contained by the collection. + More than one element satisfies the condition in . + The element if it satisfies the specified condition; otherwise the default element. + + + Copies the contents of this array to a mutable array. + The immutable array to copy into a mutable one. + The type of element contained by the collection. + The newly instantiated array. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Filters a sequence of values based on a predicate. + The array to filter. + The condition to use for filtering the array content. + The type of element contained by the collection. + Returns that contains elements that meet the condition. + + + An unsafe class that provides a set of methods to access the underlying data representations of immutable collections. + + + Gets the underlying array for an input value. + The input value to get the underlying array from. + The type of elements in the input value. + The underlying array for , if present. + + + Gets an value wrapping the input array. + The input array to wrap in the returned value. + The type of elements in the input array. + An value wrapping . + + + \ No newline at end of file diff --git a/packages/System.Collections.Immutable.8.0.0/lib/net6.0/System.Collections.Immutable.dll b/packages/System.Collections.Immutable.8.0.0/lib/net6.0/System.Collections.Immutable.dll new file mode 100644 index 0000000..ed5fa05 Binary files /dev/null and b/packages/System.Collections.Immutable.8.0.0/lib/net6.0/System.Collections.Immutable.dll differ diff --git a/packages/System.Collections.Immutable.8.0.0/lib/net6.0/System.Collections.Immutable.xml b/packages/System.Collections.Immutable.8.0.0/lib/net6.0/System.Collections.Immutable.xml new file mode 100644 index 0000000..6c749c0 --- /dev/null +++ b/packages/System.Collections.Immutable.8.0.0/lib/net6.0/System.Collections.Immutable.xml @@ -0,0 +1,6100 @@ + + + + System.Collections.Immutable + + + + Provides a set of initialization methods for instances of the class. + + + Creates a from an according to specified key selector function. + An from which to create a . + A function to extract a key from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + A that contains the keys and values selected from the input sequence. + + + Creates a with the specified key/value pairs. + The key/value pairs to use to populate the dictionary. + The comparer implementation to use to compare keys for equality. If , is used. + The type of the keys in the dictionary. + The type of the values in the dictionary. + A that contains the specified keys and values. + + + Creates a from an according to specified key selector and element selector functions. + An from which to create a . + A function to extract a key from each element. + A transform function to produce a result element value from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + The type of the value returned by . + A that contains the keys and values selected from the input sequence. + + + Provides an immutable, read-only dictionary optimized for fast lookup and enumeration. + The type of the keys in the dictionary. + The type of the values in this dictionary. + + + Determines whether the dictionary contains the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the specified key; otherwise, . + + + Copies the elements of the dictionary to an array of type , starting at the specified . + The array that is the destination of the elements copied from the dictionary. + The zero-based index in at which copying begins. + + + Copies the elements of the dictionary to a span of type . + The span that is the destination of the elements copied from the dictionary. + + + Returns an enumerator that iterates through the dictionary. + An enumerator that iterates through the dictionary. + + + Gets either a reference to a in the dictionary or a reference if the key does not exist in the dictionary. + The key used for lookup. + A reference to a in the dictionary or a reference if the key does not exist in the dictionary. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the . + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Removes the element with the specified key from the . + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Adds an element with the provided key and value to the object. + The to use as the key of the element to add. + The to use as the value of the element to add. + + + Removes all elements from the object. + + + Determines whether the object contains an element with the specified key. + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + Returns an object for the object. + An object for the object. + + + Removes the element with the specified key from the object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The key of the value to get. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, the default value for the type of . + + if the dictionary contains an element with the specified key; otherwise, . + + + Gets the comparer used by this dictionary. + + + Gets the number of key/value pairs contained in the dictionary. + + + Gets an empty . + + + Gets a reference to the value associated with the specified key. + The key of the value to get. + + does not exist in the collection. + A reference to the value associated with the specified key. + + + Gets a collection containing the keys in the dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the element that has the specified key in the read-only dictionary. + The key to locate. + The element that has the specified key in the read-only dictionary. + + + Gets an enumerable collection that contains the keys in the read-only dictionary. + An enumerable collection that contains the keys in the read-only dictionary. + + + Gets an enumerable collection that contains the values in the read-only dictionary. + An enumerable collection that contains the values in the read-only dictionary. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + Gets a value indicating whether the object is read-only. + + true if the object is read-only; otherwise, false. + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key, or null if the key does not exist. + + + Gets an object containing the keys of the object. + An object containing the keys of the object. + + + Gets an object containing the values in the object. + An object containing the values in the object. + + + Gets a collection containing the values in the dictionary. + + + Enumerates the elements of a . + + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + + Creates a with the specified values. + The values to use to populate the set. + The comparer implementation to use to compare values for equality. If , is used. + The type of the values in the set. + A frozen set. + + + Provides an immutable, read-only set optimized for fast lookup and enumeration. + The type of the values in this set. + + + Determines whether the set contains the specified element. + The element to locate. + + if the set contains the specified element; otherwise, . + + + Copies the values in the set to an array, starting at the specified . + The array that is the destination of the values copied from the set. + The zero-based index in at which copying begins. + + + Copies the values in the set to a span. + The span that is the destination of the values copied from the set. + + + Returns an enumerator that iterates through the set. + An enumerator that iterates through the set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper subset of other; otherwise, false. + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper superset of other; otherwise, false. + + + Determines whether a set is a subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a subset of other; otherwise, false. + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a superset of other; otherwise, false. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + true if the current set and other share at least one common element; otherwise, false. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + true if the current set is equal to other; otherwise, false. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in the current set, in the specified collection, or in both. + The collection to compare to the current set. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the default value of T when the search yielded no match. + A value indicating whether the search was successful. + + + Gets the comparer used by this set. + + + Gets the number of values contained in the set. + + + Gets an empty . + + + Gets a collection containing the values in the set. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the values of a . + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an immutable collection of key/value pairs. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of keys in the dictionary. + The type of values in the dictionary. + + + Adds an element with the specified key and value to the dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether the immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Represents a list of elements that cannot be modified. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Makes a copy of the list, and adds the specified object to the end of the copied list. + The object to add to the list. + A new list with the object added. + + + Makes a copy of the list and adds the specified objects to the end of the copied list. + The objects to add to the list. + A new list with the elements added. + + + Creates a list with all the items removed, but with the same sorting and ordering semantics as this list. + An empty list that has the same sorting and ordering semantics as this instance. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the . This value can be null for reference types. + The zero-based starting indexes of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use to locate . + The zero-based index of the first occurrence of within the range of elements in the that starts at and contains number of elements if found; otherwise -1. + + + Inserts the specified element at the specified index in the immutable list. + The zero-based index at which to insert the value. + The object to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The zero-based index at which the new elements should be inserted. + The elements to insert. + A new immutable list that includes the specified elements. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to match . + Returns . + + + Removes the first occurrence of a specified object from this immutable list. + The object to remove from the list. + The equality comparer to use to locate . + A new list with the specified object removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes the specified object from the list. + The objects to remove from the list. + The equality comparer to use to determine if match any objects in the list. + A new immutable list with the specified objects removed, if matched objects in the list. + + + Removes a range of elements from the . + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + A new immutable list with the elements removed. + + + Returns a new list with the first matching element in the list replaced with the specified element. + The element to be replaced. + The element to replace the first occurrence of with. + The equality comparer to use for matching . + + does not exist in the list. + A new list that contains , even if is the same as . + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + A new list that contains the new element, even if the element at the specified location is the same as the new element. + + + Represents an immutable first-in, first-out collection of objects. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Returns a new queue with all the elements removed. + An empty immutable queue. + + + Removes the first element in the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue with the first element removed. This value is never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue with the specified element added. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a value that indicates whether this immutable queue is empty. + + if this queue is empty; otherwise, . + + + Represents a set of elements that can only be modified by creating a new instance of the set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored in the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable set contains a specified element. + The element to locate in the set. + + if the set contains the specified value; otherwise, . + + + Removes the elements in the specified collection from the current immutable set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains only elements that exist in this set and the specified set. + The collection to compare to the current . + A new immutable set that contains elements that exist in both sets. + + + Determines whether the current immutable set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a proper (strict) superset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Determines whether the set contains a specified value. + The value to search for. + The matching value from the set, if found, or equalvalue if there are no matches. + + if a matching value was found; otherwise, . + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Represents an immutable last-in-first-out (LIFO) collection. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns the element at the top of the immutable stack without removing it. + The stack is empty. + The element at the top of the stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets a value that indicates whether this immutable stack is empty. + + if this stack is empty; otherwise,. + + + Provides methods for creating an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Searches the sorted immutable array for a specified element using the default comparer and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The comparer implementation to use when comparing elements, or null to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The comparer to use when comparing elements for equality or to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + +-or- + + is , and is of a type that is not compatible with the elements of . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Creates an empty immutable array. + The type of elements stored in the array. + An empty immutable array. + + + Creates an immutable array that contains the specified object. + The object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified object. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The fourth object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array from the specified array of objects. + The array of objects to populate the array with. + The type of elements stored in the array. + An immutable array that contains the array of items. + + + Creates an immutable array with specified objects from another array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an immutable array with the specified objects from another immutable array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates a mutable array that can be converted to an without allocating new memory. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a mutable array that can be converted to an without allocating new memory. + The initial capacity of the builder. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a new populated with the specified items. + The elements to add to the array. + The type of element stored in the array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to pass to the selector mapping function. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to be passed to the selector mapping function. + The type of element to be stored in the target array. + An immutable array that contains the specified items. + + + Creates an immutable array from the specified collection. + The collection of objects to copy to the immutable array. + The type of elements contained in . + An immutable array that contains the specified collection of objects. + + + Creates an immutable array from the current contents of the builder's array. + The builder to create the immutable array from. + The type of elements contained in the immutable array. + An immutable array that contains the current contents of the builder's array. + + + Produce an immutable array of contents from specified elements. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Converts the span to an immutable array. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Represents an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored by the array. + + + Gets an empty immutable array. + + + Returns a copy of the original array with the specified item added to the end. + The item to be added to the end of the array. + A new array with the specified item added to the end. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Returns a new immutable array that contains the elements of this array cast to a different type. + The type of array element to return. + An immutable array that contains the elements of this array, cast to a different type. If the cast fails, returns an array whose property returns . + + + Creates a new read-only memory region over this immutable array. + The read-only memory representation of this immutable array. + + + Creates a new read-only span over this immutable array. + The read-only span representation of this immutable array. + + + Creates a over the portion of the current , beginning at a specified position for a specified length. + The index at which to begin the span. + The number of items in the span. + The representation of the . + + + Creates a span over the portion of the current based on the specified . + A range in the current . + A span representation of the . + + + Initializes a new instance of the struct by casting the underlying array to an array of type . + The type of array element to return. + The cast is illegal. + An immutable array instance with elements cast to the new type. + + + Initializes a new instance of the struct based on the contents of an existing instance, allowing a covariant static cast to efficiently reuse the existing array. + The array to initialize the array with. No copy is made. + The type of array element to return. + An immutable array instance with elements cast to the new type. + + + Returns an array with all the elements removed. + An array with all of the elements removed. + + + Determines whether the specified item exists in the array. + The item to search for. + + if the specified item was found in the array; otherwise . + + + Determines whether the specified item exists in the array. + The item to search for. + The equality comparer to use in the search. + If , is used. + + if an equal value was found in the array; otherwise. + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the contents of this array to the specified array starting at the specified destination index. + The array to copy to. + The index in where copying begins. + + + Copies the specified items in this array to the specified array at the specified starting index. + The index of this array where copying begins. + The array to copy to. + The index in where copying begins. + The number of elements to copy from this array. + + + Copies the elements of current to a . + The that is the destination of the elements copied from current . + + + Indicates whether specified array is equal to this array. + An object to compare with this object. + + if is equal to this array; otherwise, . + + + Determines if this array is equal to the specified object. + The to compare with this array. + + if this array is equal to ; otherwise, . + + + Returns an enumerator that iterates through the contents of the array. + An enumerator. + + + Returns a hash code for this instance. + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + Searches the array for the specified item. + The item to search for. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the item inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Gets a read-only reference to the element at the specified in the read-only list. + The zero-based index of the element to get a reference to. + A read-only reference to the element at the specified in the read-only list. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Filters the elements of this array to those assignable to the specified type. + The type to filter the elements of the sequence on. + An that contains elements from the input sequence of type of . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates whether two arrays are not equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are not equal; otherwise, . + + + Checks for inequality between two array. + The object to the left of the operator. + The object to the right of the operator. + + if the two arrays are not equal; otherwise, . + + + Returns an array with the first occurrence of the specified element removed from the array. If no match is found, the current array is returned. + The item to remove. + A new array with the item removed. + + + Returns an array with the first occurrence of the specified element removed from the array. + + If no match is found, the current array is returned. + The item to remove. + The equality comparer to use in the search. + A new array with the specified item removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the item at the specified index removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + A new array with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + A new list with the elements removed. + + + Removes the specified items from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The item to add to the list. + The new array that contains at the specified index. + + + Forms a slice out of the current starting at a specified index for a specified length. + The index at which to begin this slice. + The desired length for the slice. + An that consists of elements from the current , starting at . + + + Sorts the elements in the immutable array using the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the immutable array using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the entire using the specified . + The to use when comparing elements. + + is null. + The sorted list. + + + Sorts the specified elements in the immutable array using the specified comparer. + The index of the first element to sort. + The number of elements to include in the sort. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Throws in all cases. + The item to add to the end of the array. + + + Throws in all cases. + + + Throws in all cases. + The object to remove from the array. + Throws in all cases. + + + Returns an enumerator that iterates through the array. + The property returns . + An enumerator that can be used to iterate through the array. + + + Throws in all cases. + The index of the location to insert the item. + The item to insert. + + + Throws in all cases. + The index. + + + Copies this array to another array starting at the specified index. + The array to copy this array to. + The index in the destination array to start the copy operation. + + + Returns an enumerator that iterates through the immutable array. + The property returns . + An enumerator that iterates through the immutable array. + + + Throws in all cases. + The value to add to the array. + Thrown in all cases. + Throws in all cases. + + + Throws in all cases. + Thrown in all cases. + + + Throws in all cases. + The value to check for. + Throws in all cases. + + + Gets the value at the specified index. + The value to return the index of. + The value of the element at the specified index. + + + Throws in all cases. + Index that indicates where to insert the item. + The value to insert. + Thrown in all cases. + + + Throws in all cases. + The value to remove from the array. + Thrown in all cases. + + + Throws in all cases. + The index of the item to remove. + Thrown in all cases. + + + Returns a copy of the original array with the specified item added to the end. + The value to add to the end of the array. + A new array with the specified item added to the end. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the end of the array. + A new array with the elements added to the end. + + + Returns an array with all the elements removed. + An array with all the elements removed. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the specified value inserted. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new array with the specified values inserted. + + + Returns an array with the first occurrence of the specified element removed from the array; if no match is found, the current array is returned. + The value to remove from the array. + The equality comparer to use in the search. + A new array with the value removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the specified item removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The value to add to the list. + The new array that contains at the specified index. + + + Determines whether the current collection element precedes, occurs in the same position as, or follows another element in the sort order. + The element to compare with the current instance. + The object used to compare members of the current array with the corresponding members of other array. + The arrays are not the same length. + An integer that indicates whether the current element precedes, is in the same position or follows the other element. + + + Determines whether this array is structurally equal to the specified array. + The array to compare with the current instance. + An object that determines whether the current instance and other are structurally equal. + + if the two arrays are structurally equal; otherwise, . + + + Returns a hash code for the current instance. + An object that computes the hash code of the current object. + The hash code for the current instance. + + + Creates a mutable array that has the same contents as this array and can be efficiently mutated across multiple operations using standard mutable interfaces. + The new builder with the same contents as this array. + + + Gets a value indicating whether this array was declared but not initialized. + + if the is ; otherwise, . + + + Gets a value indicating whether this is empty or is not initialized. + + if the is or ; otherwise, . + + + Gets a value indicating whether this is empty. + + if the is empty; otherwise, . + + + Gets the element at the specified index in the immutable array. + The zero-based index of the element to get. + The element at the specified index in the immutable array. + + + Gets the number of elements in the array. + The number of elements in the array. + + + Gets the number of items in the collection. + The property returns . + Number of items in the collection. + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the element at the specified index in the read-only list. + The zero-based index of the element to get. + Always thrown from the setter. + The property returns . + The element at the specified index in the read-only list. + + + Gets the number of items in the collection. + The property returns . + The number of items in the collection. + + + Gets the element at the specified index. + The index. + The property returns . + The element. + + + Gets the size of the array. + The property returns . + The number of items in the collection. + + + See the interface. Always returns since since immutable collections are thread-safe. + Boolean value determining whether the collection is thread-safe. + + + Gets the sync root. + An object for synchronizing access to the collection. + + + Gets a value indicating whether this instance is fixed size. + + if this instance is fixed size; otherwise, . + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Always thrown from the setter. + The property returns . + The object at the specified index. + + + A writable array accessor that can be converted into an instance without allocating extra memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the array. + The object to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + The type that derives from the type of item already in the array. + + + Removes all items from the array. + + + Determines whether the array contains a specific value. + The object to locate in the array. + + if the object is found; otherwise, . + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the current contents to the specified array. + The array to copy to. + The index to start the copy operation. + + + Copies the contents of this array to the specified array. + The index into this collection of the first element to copy. + The array to copy to. + The index into the destination array to which the first copied element is written. + The number of elements to copy. + + + Copies the current contents to the specified . + The to copy to. + + + Returns the current contents as an and sets the collection to a zero length array. + An immutable array. + + + Gets an object that can be used to iterate through the collection. + An object that can be used to iterate through the collection. + + + Determines the index of a specific item in the array. + The item to locate in the array. + The index of if it's found in the list; otherwise, -1. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The index of if it's found in the list; otherwise, -1. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + If , is used. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The number of elements to search. + The index of if it's found in the list; otherwise, -1. + + + Determines the index for the specified item. + The item to locate in the array. + The index at which to begin the search. + The starting position of the search. + The equality comparer to use in the search. + The index of if it's found in the list; otherwise, -1. + + + Inserts an item in the array at the specified index. + The zero-based index at which to insert the item. + The object to insert into the array. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Gets a read-only reference to the element at the specified index. + The item index. + + is greater or equal to the array count. + The read-only reference to the element at the specified index. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The 0-based index where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Extracts the internal array as an and replaces it with a zero length array. + When doesn't equal . + An immutable array containing the elements of the builder. + + + Removes the specified element. + The item to remove. + + if was found and removed; otherwise, . + + + Removes the first occurrence of the specified element from the builder. + If no match is found, the builder remains unchanged. + The element to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + + + Removes the item at the specified index from the array. + The zero-based index of the item to remove. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified values from this list. + The 0-based index into the array for the element to omit from the returned array. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + + + Reverses the order of elements in the collection. + + + Sorts the contents of the array. + + + Sorts the contents of the array. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Sorts the elements in the entire array using the specified . + The to use when comparing elements. + + is null. + + + Sorts the contents of the array. + The starting index for the sort. + The number of elements to include in the sort. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Creates a new array with the current contents of this . + A new array with the contents of this . + + + Returns an immutable array that contains the current contents of this . + An immutable array that contains the current contents of this . + + + Gets or sets the length of the internal array. When set, the internal array is reallocated to the given capacity if it is not already the specified length. + The length of the internal array. + + + Gets or sets the number of items in the array. + The number of items in the array. + + + Gets or sets the item at the specified index. + The index of the item to get or set. + The specified index is not in the array. + The item at the specified index. + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + An array enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances to the next value in the array. + + if another item exists in the array; otherwise, . + + + Gets the current item. + The current item. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Determines whether the specified immutable dictionary contains the specified key/value pair. + The immutable dictionary to search. + The key to locate in the immutable dictionary. + The value to locate on the specified key, if the key is found. + The type of the keys in the immutable dictionary. + The type of the values in the immutable dictionary. + + if this map contains the specified key/value pair; otherwise, . + + + Creates an empty immutable dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates a new immutable dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary that contains the specified items. + The items used to populate the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The comparer implementation to use to compare values for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The type of the key. + The type of the value. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The type of the key. + The type of the value. + The value for the key, or if no matching key was found. + + + Constructs an immutable dictionary from an existing collection of elements, applying a transformation function to the source keys. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Constructs an immutable dictionary based on some transformation of a sequence. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The key comparer to use for the dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable dictionary from the current contents of the builder's dictionary. + The builder to create the immutable dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Represents an immutable, unordered collection of keys and values. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the keys in the dictionary. + The type of the values in the dictionary. + + + Gets an empty immutable dictionary. + + + Adds an element with the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the immutable dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified key. + The key to locate. + + if the immutable dictionary contains an element with the specified key; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the immutable dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the immutable dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the additional key/value pair. + + + See the interface. + Sequence of key/value pairs to be added to the dictionary. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key-value comparison rules as this dictionary instance. + The immutable dictionary instance. + + + See the interface. + Key of the entry to be removed. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + See the interface. + Sequence of keys to be removed. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + See the interface. + Key of entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the specified key/value pair. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + The key-value pairs to set on the map. Any keys that conflict with existing keys will replace the previous values. + A copy of the immutable dictionary with updated key-value pairs. + + + Creates an immutable dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Gets an instance of the immutable dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The type of the key. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable dictionary. + The key comparer. + + + Gets the keys in the immutable dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The type of the key. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable dictionary. + The values in the immutable dictionary. + + + Represents a hash map that mutates with little or no memory allocations and that can produce or build on immutable hash map instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + + is null. + An element with the same key already exists in the dictionary. + The dictionary is read-only. + + + Adds the specified item to the immutable dictionary. + The object to add to the dictionary. + The dictionary is read-only. + + + Adds a sequence of values to this collection. + The items to add to this collection. + + + Removes all items from the immutable dictionary. + The dictionary is read-only. + + + Determines whether the immutable dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified key. + The key to locate in the dictionary. + + is null. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified value. + The value to locate in the immutable dictionary. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the collection. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + + is null. + The dictionary is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the dictionary. + + + Removes the first occurrence of a specific object from the immutable dictionary. + The object to remove from the dictionary. + The dictionary is read-only. + + if was successfully removed from the dictionary; otherwise, . This method also returns false if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable dictionary. + The keys for entries to remove from the dictionary. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array of type that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable dictionary based on the contents of this instance. + An immutable dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Returns the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, returns the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the immutable dictionary contains an element with the specified key; otherwise, . + + + Gets the number of elements contained in the immutable dictionary. + The number of elements contained in the immutable dictionary. + + + Gets or sets the element with the specified key. + The element to get or set. + + is . + The property is being retrieved, and is not found. + The property is being set, and the is read-only. + The element that has the specified key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a collection that contains the keys of the immutable dictionary. + A collection that contains the keys of the object that implements the immutable dictionary. + + + Gets a value that indicates whether the collection is read-only. + + if the collection is read-only; otherwise, . + + + Gets a collection containing the keys of the generic dictionary. + A collection containing the keys of the object that implements the generic dictionary. + + + Gets a collection containing the values in the generic dictionary. + A collection containing the values in the object that implements the generic dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + Value stored under specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of the immutable dictionary without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable dictionary. + The dictionary was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the dictionary. + The dictionary was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element in the dictionary at the current position of the enumerator. + + + Gets the current element. + Current element in enumeration. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable hash set. + The type of items to be stored in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the specified array of items. + An array that contains the items to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates an empty immutable hash set that uses the specified equality comparer. + The object to use for comparing objects in the set for equality. + The type of items in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the items in the specified collection and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + An array that contains the items to prepopulate the hash set with. + The type of items stored in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The equality comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable collection prefilled with the specified items. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable hash set builder. + The type of items stored by the collection. + The immutable hash set builder. + + + Creates a new immutable hash set builder. + The object to use for comparing objects in the set for equality. + The type of items stored by the collection. + The new immutable hash set builder. + + + Creates a new immutable hash set prefilled with the specified items. + The items to add to the hash set. + The type of items stored by the collection. + The new immutable hash set that contains the specified items. + + + Creates a new immutable hash set that contains the specified items and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The items add to the collection before immutability is applied. + The type of items stored in the collection. + The new immutable hash set. + + + Enumerates a sequence and produces an immutable hash set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable hash set of its contents, and uses the specified equality comparer for the set type. + The sequence to enumerate. + The object to use for comparing objects in the set for equality. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence and uses the specified equality comparer. + + + Creates an immutable hash set from the current contents of the builder's set. + The builder to create the immutable hash set from. + The type of the elements in the hash set. + An immutable hash set that contains the current contents in the builder's set. + + + Represents an immutable, unordered hash set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the hash set. + + + Gets an immutable hash set for this type that uses the default . + + + Adds the specified element to the hash set. + The element to add to the set. + A hash set that contains the added value and any values previously held by the object. + + + Retrieves an empty immutable hash set that has the same sorting and ordering semantics as this instance. + An empty hash set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable hash set contains the specified element. + The object to locate in the immutable hash set. + + if is found in the ; otherwise, . + + + Removes the elements in the specified collection from the current immutable hash set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Determines whether the current immutable hash set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable hash set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable hash set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable hash set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Adds an item to the set. + The object to add to the set. + The set is read-only. + + + Removes all items from this set. + The set is read-only. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + + if the element is successfully removed; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that iterates through the collection. + + + Adds an element to the current set and returns a value that indicates whether the element was successfully added. + The element to add to the collection. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current collection. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or in the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a set. + An enumerator that can be used to iterate through the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting or ordering semantics as this instance. + + + Removes the elements in the specified collection from the current set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates an immutable hash set that has the same contents as this set and can be efficiently mutated across multiple operations by using standard mutable interfaces. + A set with the same contents as this set that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Creates a new immutable hash set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable hash set with the items added; or the original set if all the items were already in the set. + + + Gets an instance of the immutable hash set that uses the specified equality comparer for its search methods. + The equality comparer to use. + An instance of this immutable hash set that uses the given comparer. + + + Gets the number of elements in the immutable hash set. + The number of elements in the hash set. + + + Gets a value that indicates whether the current immutable hash set is empty. + + if this instance is empty; otherwise, . + + + Gets the object that is used to obtain hash codes for the keys and to check the equality of values in the immutable hash set. + The comparer used to obtain hash codes for the keys and check equality. + + + See the interface. + + if the is read-only; otherwise, . + + + See the interface. + + if access to the is synchronized (thread safe); otherwise, . + + + See . + An object that can be used to synchronize access to the . + + + Represents a hash set that mutates with little or no memory allocations and that can produce or build on immutable hash set instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the immutable hash set. + The item to add. + + if the item did not already belong to the collection; otherwise, . + + + Removes all items from the immutable hash set. + The hash set is read-only. + + + Determines whether the immutable hash set contains a specific value. + The object to locate in the hash set. + + if is found in the hash set ; otherwise, . + + + Removes all elements in the specified collection from the current hash set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the immutable hash set. + An enumerator that can be used to iterate through the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of a specific object from the immutable hash set. + The object to remove from the set. + The set is read-only. + + if was successfully removed from the set ; otherwise, . This method also returns if is not found in the original set. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an item to the hash set. + The object to add to the set. + The set is read-only. + + + Copies the elements of the hash set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the hash set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current set. + + + Gets the number of elements contained in the immutable hash set. + The number of elements contained in the immutable hash set. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Enumerates the contents of the immutable hash set without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable hash set. + The hash set was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the hash set. + + + Sets the enumerator to its initial position, which is before the first element in the hash set. + The hash set was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Gets the current element. + The element in the collection at the current position of the enumerator. + + + Contains interlocked exchange mechanisms for immutable collections. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The value to use if no previous value exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The function that receives the key and returns a new value to add to the dictionary when no value previously exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Atomically enqueues an element to the end of a queue. + The variable or field to atomically update. + The value to enqueue. + The type of items contained in the collection. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified key is not in the dictionary. + The key for the value to get or add. + The value to add to the dictionary the key is not found. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. This delegate will not be invoked more than once. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. + The argument to pass to the value factory. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The type of the argument supplied to the value factory. + The value at the specified key or if the key was not present. + + + Compares two immutable arrays for equality and, if they are equal, replaces one of the arrays. + The destination, whose value is compared with and possibly replaced. + The value that replaces the destination value if the comparison results in equality. + The value that is compared to the value at . + The type of element stored by the array. + The original value in . + + + Sets an array to the specified array and returns a reference to the original array, as an atomic operation. + The array to set to the specified value. + The value to which the parameter is set. + The type of element stored by the array. + The original value of . + + + Sets an array to the specified array if the array has not been initialized. + The array to set to the specified value. + The value to which the parameter is set, if it's not initialized. + The type of element stored by the array. + + if the array was assigned the specified value; otherwise, . + + + Pushes a new element onto the stack. + The stack to update. + The value to push on the stack. + The type of items in the stack. + + + Adds the specified key and value to the dictionary if the key is not in the dictionary. + The dictionary to update with the specified key and value. + The key to add, if is not already defined in the dictionary. + The value to add. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key is not in the dictionary; otherwise, . + + + Atomically removes and returns the specified element at the head of the queue, if the queue is not empty. + The variable or field to atomically update. + Set to the value from the head of the queue, if the queue not empty. + The type of items in the queue. + + if the queue is not empty and the head element is removed; otherwise, . + + + Removes an element from the top of the stack, if there is an element to remove. + The stack to update. + Receives the value removed from the stack, if the stack is not empty. + The type of items in the stack. + + if an element is removed from the stack; otherwise, . + + + Removes the element with the specified key, if the key exists. + The dictionary to update. + The key to remove. + Receives the value of the removed item, if the dictionary is not empty. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key was found and removed; otherwise, . + + + Sets the specified key to the specified value if the specified key already is set to a specific value. + The dictionary to update. + The key to update. + The new value to set. + The current value for in order for the update to succeed. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if and are present in the dictionary and comparison was updated to ; otherwise, . + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data in the immutable array. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data in the immutable array. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable list. + The type of items to be stored in the . + An empty immutable list. + + + Creates a new immutable list that contains the specified item. + The item to prepopulate the list with. + The type of items in the . + A new that contains the specified item. + + + Creates a new immutable list that contains the specified array of items. + An array that contains the items to prepopulate the list with. + The type of items in the . + A new immutable list that contains the specified items. + + + Creates a new immutable list that contains the items from the specified span of items. + A span that contains the items to prepopulate the list with. + The type of items stored by the collection. + A new immutable list that contains the specified items. + + + Creates a new immutable list builder. + The type of items stored by the collection. + The immutable collection builder. + + + Creates a new immutable list that contains the specified items. + The items to add to the list. + The type of items in the . + An immutable list that contains the specified items. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Removes the specified value from this list. + The list to search. + The value to remove. + The type of items in the list. + A new immutable list with the element removed, or this list if the element is not in this list. + + + Removes the specified values from this list. + The list to search. + The items to remove if matches are found in this list. + The type of items in the list. + A new immutable list with the elements removed. + + + Replaces the first equal element in the list with the specified element. + The list to search. + The element to replace. + The element to replace the old element with. + The type of items in the list. + + does not exist in the list. + The new list -- even if the value being replaced is equal to the new value for that position. + + + Enumerates a sequence and produces an immutable list of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable list that contains the items in the specified sequence. + + + Creates an immutable list from the current contents of the builder's collection. + The builder to create the immutable list from. + The type of the elements in the list. + An immutable list that contains the current contents in the builder's collection. + + + Represents an immutable list, which is a strongly typed list of objects that can be accessed by index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Gets an empty immutable list. + + + Adds the specified object to the end of the immutable list. + The object to add. + A new immutable list with the object added. + + + Adds the elements of the specified collection to the end of the immutable list. + The collection whose elements will be added to the end of the list. + A new immutable list with the elements added. + + + Searches the entire sorted list for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be for reference types. + The default comparer cannot find a comparer implementation of the for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches the entire sorted list for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements or null to use the default comparer. + comparer is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches a range of elements in the sorted list for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements, or to use the default comparer. + index is less than 0 or is less than 0. + index and do not denote a valid range in the list. + + is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted list, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Removes all elements from the immutable list. + An empty list that retains the same sort or unordered semantics that this instance has. + + + Determines whether this immutable list contains the specified value. + The value to locate. + + if the list contains the specified value; otherwise, . + + + Converts the elements in the current immutable list to another type, and returns a list containing the converted elements. + A delegate that converts each element from one type to another type. + The type of the elements of the target array. + A list of the target type containing the converted elements from the current . + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Copies a range of elements from the immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list that contains all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Performs the specified action on each element of the immutable list. + The delegate to perform on each element of the immutable list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the immutable list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the entire immutable list, if found; otherwise, ?1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the list that starts at the specified index and contains the specified number of elements. + The object to locate in the list The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the first occurrence of item within the range of elements in the list that starts at index and contains count number of elements, if found; otherwise, -1. + + + Inserts the specified object into the immutable list at the specified index. + The zero-based index at which to insert the object. + The object to insert. + The new immutable list after the object is inserted. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which to insert the elements. + The collection whose elements should be inserted. + The new immutable list after the elements are inserted. + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + + is negative or not less than . + A read-only reference to the element at the given position. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the list that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the last occurrence of item within the range of elements in the list that contains count number of elements and ends at index, if found; otherwise, -1. + + + Removes the first occurrence of the specified object from this immutable list. + The object to remove. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes the first occurrence of the object that matches the specified value from this immutable list. + The value of the element to remove from the list. + The equality comparer to use in the search. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The new list with the elements removed. + + + Removes the element at the specified index. + The zero-based index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list. + The collection whose elements should be removed if matches are found in this list. + A new list with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes a range of elements, starting from the specified index and containing the specified number of elements, from this immutable list. + The starting index to begin removal. + The number of elements to remove. + A new list with the elements removed. + + + Replaces the specified element in the immutable list with a new element. + The element to replace. + The element to replace with. + + does not exist in the immutable list. + The new list with the replaced element, even if it is equal to the old element. + + + Replaces the specified element in the immutable list with a new element. + The element to replace in the list. + The element to replace with. + The comparer to use to check for equality. + A new list with the object replaced, or this list if the specified object is not in this list. + + + Reverses the order of the elements in the entire immutable list. + The reversed list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + The reversed list. + + + Replaces an element at a given position in the immutable list with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list with the replaced element, even if it is equal to the old element at that position. + + + Sorts the elements in the entire immutable list using the default comparer. + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The delegate to use when comparing elements. + + is . + The sorted list. + + + Sorts a range of elements in the immutable list using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Adds the specified item to the immutable list. + The item to add. + Always thrown. + + + Removes all items from the immutable list. + + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove. + Always thrown. + + if was successfully removed from the list; otherwise, . This method also returns if is not found in the original list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Inserts an object in the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert. + + + + Removes the value at the specified index. + The zero-based index of the item to remove. + + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from immutable list. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Adds an item to the immutable list. + The object to add to the list. + Always thrown. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the list. + + + Removes all items from the immutable list. + Always thrown. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + + if the object is found in the list; otherwise, . + + + Determines the index of a specific item in the immutable list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item into the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + Always thrown. + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + Always thrown. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove. + Always thrown. + + + Adds the specified value to this immutable list. + The value to add. + A new list with the element added. + + + Adds the specified values to this immutable list. + The values to add. + A new list with the elements added. + + + Retrieves an empty list that has the same sorting and ordering semantics as this instance. + An empty list that has the same sorting and ordering semantics as this instance. + + + Inserts the specified element at the specified index in the immutable list. + The index at which to insert the value. + The element to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The index at which to insert the elements. + The elements to insert. + A new immutable list that includes the specified elements. + + + Removes the element with the specified value from the list. + The value of the element to remove from the list. + The comparer to use to compare elements for equality. + A new with the specified element removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list that match the items specified. + The range of items to remove from the list, if found. + The equality comparer to use to compare elements. + + or is . + An immutable list with the items removed. + + + Removes the specified number of elements at the specified location from this list. + The starting index of the range of elements to remove. + The number of elements to remove. + A new list with the elements removed. + + + Replaces an element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + + does not exist in the list. + The new list. + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list. + + + Creates a list that has the same contents as this list and can be efficiently mutated across multiple operations using standard mutable interfaces. + The created list with the same contents as this list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements contained in the list. + The number of elements in the list. + + + Gets a value that indicates whether this list is empty. + + if the list is empty; otherwise, . + + + Gets the element at the specified index of the list. + The index of the element to retrieve. + In a get operation, is negative or not less than . + The element at the specified index. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the value at the specified index. + The zero-based index of the item to access. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + Value stored in the specified index. + + + This type is immutable, so it is always thread-safe. See the interface. + Boolean value determining whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value indicating whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + The value at the specified index. + + + Represents a list that mutates with little or no memory allocations and that can produce or build on immutable list instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an item to the immutable list. + The item to add to the list. + + + Adds a series of elements to the end of this list. + The elements to add to the end of the list. + + + Searches the entire for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the entire for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the specified range of the for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is less than 0. +-or- + + is less than 0. + + and do not denote a valid range in the . + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Removes all items from the immutable list. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + if item is found in the list; otherwise, . + + + Creates a new immutable list from the list represented by this builder by using the converter function. + The converter function. + The type of the output of the delegate converter function. + A new immutable list from the list represented by this builder. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list containing all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Performs the specified action on each element of the list. + The delegate to perform on each element of the list. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the range of elements in the immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Inserts an item to the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the immutable list. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the immutable list. The collection itself cannot be , but it can contain elements that are null, if type T is a reference type. + + + Gets a read-only reference to the value for a given into the list. + The index of the desired element. + A read-only reference to the value at the specified . + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the last occurrence of within the entire immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that extends from the first element to , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that contains number of elements and ends at , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + + if item was successfully removed from the list; otherwise, . This method also returns if item is not found in the list. + + + Removes the first occurrence matching the specified value from this list. + The item to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The number of elements removed from the immutable list. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove from the list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified range of values from this list. + The starting index to begin removal. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The old value does not exist in the list. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + The old value does not exist in the list. + + + Reverses the order of the elements in the entire immutable list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + + + Sorts the elements in the entire immutable list by using the default comparer. + + + Sorts the elements in the entire immutable list by using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + + + Sorts the elements in the entire immutable list by using the specified comparison object. + The object to use when comparing elements. + + is . + + + Sorts the elements in a range of elements in the immutable list by using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the list to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an item to the list. + The object to add to the list. + + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the list. + + + + Determines whether the list contains a specific value. + The object to locate in the list. + + + if the is found in the list; otherwise, . + + + Determines the index of a specific item in the list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item to the list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + + + + Removes the first occurrence of a specific object from the list. + The object to remove from the list. + + + + Creates an immutable list based on the contents of this instance. + An immutable list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements in this immutable list. + The number of elements in this list. + + + Gets or sets the value for a given index in the list. + The index of the item to get or set. + The value at the specified index. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + The object at the specified index. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances enumeration to the next element of the immutable list. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the list. + + + Sets the enumerator to its initial position, which is before the first element in the immutable list. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable queue. + The type of items to be stored in the immutable queue. + An empty immutable queue. + + + Creates a new immutable queue that contains the specified item. + The item to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified item. + + + Creates a new immutable queue that contains the specified array of items. + An array that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified array of items. + A span that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified items. + The items to add to the queue before immutability is applied. + The type of elements in the queue. + An immutable queue that contains the specified items. + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + The queue to remove the item from. + When this method returns, contains the item from the beginning of the queue. + The type of elements in the immutable queue. + The stack is empty. + The new queue with the item removed. + + + Represents an immutable queue. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Removes all objects from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + When this method returns, contains the element from the beginning of the queue. + The queue is empty. + The new immutable queue with the beginning element removed. + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Returns an enumerator that iterates through the immutable queue. + An enumerator that can be used to iterate through the queue. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a read-only reference to the element at the front of the queue. + The queue is empty. + Read-only reference to the element at the front of the queue. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Gets an empty immutable queue. + An empty immutable queue. + + + Gets a value that indicates whether this immutable queue is empty. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if this queue is empty; otherwise, . + + + Enumerates the contents of an immutable queue without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable queue. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the queue. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates a new immutable sorted dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key comparer. + The comparer implementation to use to evaluate keys for equality and sorting. + The items to add to the sorted dictionary. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + The new immutable sorted dictionary that contains the specified items and uses the specified key comparer. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key and value comparers. + The comparer implementation to use to compare keys for equality and sorting. + The comparer implementation to use to compare values for equality. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items and uses the specified comparers. + + + Creates an immutable sorted dictionary that contains the specified items and uses the default comparer. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable sorted dictionary from the current contents of the builder's dictionary. + The builder to create the immutable sorted dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Represents an immutable sorted dictionary. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the key contained in the dictionary. + The type of the value contained in the dictionary. + + + Gets an empty immutable sorted dictionary. + + + Adds an element with the specified key and value to the immutable sorted dictionary. + The key of the entry to add. + The value of entry to add. + The given key already exists in the dictionary but has a different value. + A new immutable sorted dictionary that contains the additional key/value pair. + + + Adds the specific key/value pairs to the immutable sorted dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable sorted dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable sorted dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether this immutable sorted map contains the specified key. + The key to locate. + + if the immutable dictionary contains the specified key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified value from the immutable sorted dictionary. + The value of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified value cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable sorted dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable sorted dictionary, possibly overwriting an existing value for the given key. + The key of the entry to add. + The key value to set. + A new immutable sorted dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable sorted dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + An immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the generic dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + The instance. + + + See the interface. + Sequence of key/value pairs to be added. + The instance. + + + See the interface. + The instance. + + + See the interface. + Key of entry to be removed. + The instance. + + + See the interface. + Sequence of keys to be removed. + The instance. + + + See the interface. + Key of entry to be updated. + Value of entry to be updated. + The instance. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + A set of key-value pairs to set on the map. + The instance. + + + Creates an immutable sorted dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. + + if the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets an instance of the immutable sorted dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable sorted dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable sorted dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable sorted dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The key to retrieve the value for. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable sorted dictionary. + The key comparer for the dictionary. + + + Gets the keys in the immutable sorted dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The object to use as the key of the element to access. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to be accessed. + Value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable sorted dictionary. + The values in the dictionary. + + + Represents a sorted dictionary that mutates with little or no memory allocations and that can produce or build on immutable sorted dictionary instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable sorted dictionary. + The key of the element to add. + The value of the element to add. + + + Adds the specified item to the immutable sorted dictionary. + The object to add to the dictionary. + + + Adds a sequence of values to the immutable sorted dictionary. + The items to add to the dictionary. + + + Removes all items from the immutable sorted dictionary. + + + Determines whether the immutable sorted dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate in the dictionary. The value can be for reference types. + + if the immutable sorted dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable sorted dictionary. + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original dictionary. + + + Removes the first occurrence of a specific object from the immutable sorted dictionary. + The object to remove from the dictionary. + + if was successfully removed from the dictionary; otherwise, . This method also returns if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable sorted dictionary. + The keys for entries to remove from the dictionary. + + + See . + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + See . + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable sorted dictionary based on the contents of this instance. + An immutable sorted dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets the number of elements in this immutable sorted dictionary. + The number of elements in this dictionary. + + + Gets or sets the value for a specified key in the immutable sorted dictionary. + The key to retrieve the value for. + The value associated with the given key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a strongly typed, read-only collection of elements. + A strongly typed, read-only collection of elements. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Returns a collection containing all keys stored in the dictionary. See . + A collection containing all keys stored in the dictionary. + + + Returns a collection containing all values stored in the dictionary. See . + A collection containing all values stored in the dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value associated with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable sorted dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable sorted dictionary. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted dictionary. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted set. + The type of items to be stored in the immutable set. + An empty immutable sorted set. + + + Creates a new immutable sorted set that contains the specified item. + The item to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates an empty immutable sorted set that uses the specified comparer. + The implementation to use when comparing items in the set. + The type of items in the immutable set. + An empty immutable set. + + + Creates a new immutable sorted set that contains the specified item and uses the specified comparer. + The implementation to use when comparing items in the set. + The item to prepopulate the set with. + The type of items stored in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items and uses the specified comparer. + The implementation to use when comparing items in the set. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable sorted set that contains the specified array of items. + A span that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Returns a collection that can be used to build an immutable sorted set. + The type of items stored by the collection. + The immutable collection builder. + + + Returns a collection that can be used to build an immutable sorted set. + The comparer used to compare items in the set for equality. + The type of items stored by the collection. + The immutable collection. + + + Creates a new immutable collection that contains the specified items. + The comparer to use to compare elements in this set. + The items to add to the set before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Creates a new immutable collection that contains the specified items. + The items to add to the set with before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Enumerates a sequence and produces an immutable sorted set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable sorted set of its contents, and uses the specified comparer. + The sequence to enumerate. + The comparer to use for initializing and adding members to the sorted set. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Creates an immutable sorted set from the current contents of the builder's set. + The builder to create the immutable sorted set from. + The type of the elements in the immutable sorted set. + An immutable sorted set that contains the current contents in the builder's set. + + + Represents an immutable sorted set implementation. + +NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the set. + + + Gets an empty immutable sorted set. + + + Adds the specified value to this immutable sorted set. + The value to add. + A new set with the element added, or this set if the element is already in this set. + + + Removes all elements from the immutable sorted set. + An empty set with the elements removed. + + + Determines whether this immutable sorted set contains the specified value. + The value to check for. + + if the set contains the specified value; otherwise, . + + + Removes a specified set of items from this immutable sorted set. + The items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the immutable sorted set. + An enumerator that can be used to iterate through the set. + + + Gets the position within this immutable sorted set that the specified value appears in. + The value whose position is being sought. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, this method returns a negative number that is the bitwise complement of the index of the first element that is larger than value. If is not found and is greater than any of the elements in the set, this method returns a negative number that is the bitwise complement of the index of the last element plus 1. + + + Creates an immutable sorted set that contains elements that exist both in this set and in the specified set. + The set to intersect with this one. + A new immutable sorted set that contains any elements that exist in both sets. + + + Determines whether the current immutable sorted set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a proper superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current immutable sorted set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference of the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference of the element at the given position. + + + Determines whether the current immutable sorted set and a specified collection share common elements. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the specified value from this immutable sorted set. + The element to remove. + A new immutable sorted set with the element removed, or this set if the element was not found in the set. + + + Returns an that iterates over this immutable sorted set in reverse order. + An enumerator that iterates over the immutable sorted set in reverse order. + + + Determines whether the current immutable sorted set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable sorted set that contains elements that exist either in this set or in a given sequence, but not both. + The other sequence of items. + The new immutable sorted set. + + + Adds the specified value to the collection. + The value to add. + + + Removes all the items from the collection. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the collection. + The object to remove from the collection. + + if was successfully removed from the collection; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Inserts an item in the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + + + Removes the item at the specified index. + The zero-based index of the item to remove. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Adds an item to the set. + The object to add to the set. + The set is read-only or has a fixed size. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the set. + Thrown in all cases. + + + Determines whether the set contains a specific value. + The object to locate in the set. + + if the object is found in the set; otherwise, . + + + Determines the index of a specific item in the set. + The object to locate in the set. + The index of if found in the list; otherwise, -1. + + + Inserts an item into the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + The set is read-only or has a fixed size. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + The set is read-only or has a fixed size. + + + Removes the item at the specified index of the set. + The zero-based index of the item to remove. + The set is read-only or has a fixed size. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Removes the elements in the specified collection from the current immutable set. + The items to remove from this set. + The new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates a collection that has the same contents as this immutable sorted set that can be efficiently manipulated by using standard mutable interfaces. + The sorted set builder. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Adds a given set of items to this immutable sorted set. + The items to add. + The new set with the items added; or the original set if all the items were already in the set. + + + Returns the immutable sorted set that has the specified key comparer. + The comparer to check for. + The immutable sorted set that has the specified key comparer. + + + Gets the number of elements in the immutable sorted set. + The number of elements in the immutable sorted set. + + + Gets a value that indicates whether this immutable sorted set is empty. + + if this set is empty; otherwise, . + + + Gets the element of the immutable sorted set at the given index. + The index of the element to retrieve from the sorted set. + The element at the given index. + + + Gets the comparer used to sort keys in the immutable sorted set. + The comparer used to sort keys. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Returns true, since immutable collections are always read-only. See the interface. + A boolean value indicating whether the collection is read-only. + + + See the interface. + The zero-based index of the item to access. + The element stored at the specified index. + + + Returns true, since immutable collections are always thread-safe. See the interface. + A boolean value indicating whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + + The . + + + Represents a sorted set that enables changes with little or no memory allocations, and efficiently manipulates or builds immutable sorted sets. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements from this set. + + + Determines whether the set contains the specified object. + The object to locate in the set. + + if is found in the set; otherwise, . + + + Removes the specified set of items from the current set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the set. + A enumerator that can be used to iterate through the set. + + + Searches for the first index within this set that the specified value is contained. + The value to locate within the set. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, returns a negative number that is the bitwise complement of the index of the first element that's larger than . If is not found and is greater than any of the elements in the set, returns a negative number that is the bitwise complement of (the index of the last element plus 1). + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection is compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference to the element at the given position. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of the specified object from the set. + The object to remove from the set. + + if was removed from the set; if was not found in the set. + + + Returns an enumerator that iterates over the immutable sorted set in reverse order. + An enumerator that iterates over the set in reverse order. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Creates an immutable sorted set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current state. + + + Gets the number of elements in the immutable sorted set. + The number of elements in this set. + + + Gets the element of the set at the given index. + The 0-based index of the element in the set to return. + The element at the given position. + + + Gets or sets the object that is used to determine equality for the values in the immutable sorted set. + The comparer that is used to determine equality for the values in the set. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread-safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Advances the enumerator to the next element of the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted set. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Gets the element at the current position of the enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable stack. + The type of items to be stored in the immutable stack. + An empty immutable stack. + + + Creates a new immutable stack that contains the specified item. + The item to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable collection that contains the specified item. + + + Creates a new immutable stack that contains the specified array of items. + An array that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified array of items. + A span that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified items. + The items to add to the stack before it's immutable. + The type of items in the stack. + An immutable stack that contains the specified items. + + + Removes the specified item from an immutable stack. + The stack to modify. + The item to remove from the stack. + The type of items contained in the stack. + The stack is empty. + A stack; never . + + + Represents an immutable stack. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element on the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns an enumerator that iterates through the immutable stack. + An enumerator that can be used to iterate through the stack. + + + Returns the object at the top of the stack without removing it. + The stack is empty. + The object at the top of the stack. + + + Gets a read-only reference to the element on the top of the stack. + The stack is empty. + A read-only reference to the element on the top of the stack. + + + Removes the element at the top of the immutable stack and returns the stack after the removal. + The stack is empty. + A stack; never . + + + Removes the specified element from the immutable stack and returns the stack after the removal. + The value to remove from the stack. + A stack; never . + + + Inserts an object at the top of the immutable stack and returns the new stack. + The object to push onto the stack. + The new stack. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable stack. + The empty immutable stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets an empty immutable stack. + An empty immutable stack. + + + Gets a value that indicates whether this instance of the immutable stack is empty. + + if this instance is empty; otherwise, . + + + Enumerates the contents of an immutable stack without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable stack. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the stack. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + LINQ extension method overrides that offer greater efficiency for than the standard LINQ methods + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + A function to be invoked on each element, in a cumulative way. + The type of element contained by the collection. + The final value after the cumulative function has been applied to all elements. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + The type of the accumulated value. + The type of element contained by the collection. + The final accumulator value. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + A function to transform the final accumulator value into the result type. + The type of the accumulated value. + The type of result returned by the result selector. + The type of element contained by the collection. + The final accumulator value. + + + Gets a value indicating whether all elements in this array match a given condition. + The array to check for matches. + The predicate. + The type of element contained by the collection. + + if every element of the source sequence passes the test in the specified predicate; otherwise, . + + + Returns a value indicating whether this collection contains any elements. + The builder to check for matches. + The type of elements in the array. + + if the array builder contains any elements; otherwise, . + + + Gets a value indicating whether the array contains any elements. + The array to check for elements. + The type of element contained by the collection. + + if the array contains an elements; otherwise, . + + + Gets a value indicating whether the array contains any elements that match a specified condition. + The array to check for elements. + The delegate that defines the condition to match to an element. + The type of element contained by the collection. + + if an element matches the specified condition; otherwise, . + + + Returns the element at a specified index in the array. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index. + + + Returns the element at a specified index in a sequence or a default value if the index is out of range. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index, or the default value if the index is not found. + + + Returns the first element in the collection. + The builder to retrieve an item from. + The type of items in the array. + If the array is empty. + The first item in the list. + + + Returns the first element in an array. + The array to get an item from. + The type of element contained by the collection. + If the array is empty. + The first item in the array. + + + Returns the first element in a sequence that satisfies a specified condition. + The array to get an item from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + If the array is empty. + The first item in the list if it meets the condition specified by . + + + Returns the first element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of the sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve elements from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the last element in the collection. + The builder to retrieve elements from. + The type of item in the builder. + The collection is empty. + The last element in the builder. + + + Returns the last element of the array. + The array to retrieve items from. + The type of element contained by the array. + The collection is empty. + The last element in the array. + + + Returns the last element of a sequence that satisfies a specified condition. + The array to retrieve elements from. + The delegate that defines the conditions of the element to retrieve. + The type of element contained by the collection. + The collection is empty. + The last element of the array that satisfies the condition. + + + Returns the last element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve an element from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Projects each element of a sequence into a new form. + The immutable array to select items from. + A transform function to apply to each element. + The type of element contained by the collection. + The type of the result element. + An whose elements are the result of invoking the transform function on each element of source. + + + Projects each element of a sequence to an , flattens the resulting sequences into one sequence, and invokes a result selector function on each element therein. + The immutable array. + A transform function to apply to each element of the input sequence. + A transform function to apply to each element of the intermediate sequence. + The type of the elements of . + The type of the intermediate elements collected by . + The type of the elements of the resulting sequence. + An whose elements are the result of invoking the one-to-many transform function on each element of and then mapping each of those sequence elements and their corresponding source element to a result element. + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence. + The array to retrieve the element from. + The type of element contained by the collection. + The element in the sequence. + + + Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists. + The immutable array to return a single element from. + The function to test whether an element should be returned. + The type of element contained by the collection. + Returns . + + + Returns the only element of the array, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence. + The array. + The type of element contained by the collection. + + contains more than one element. + The element in the array, or the default value if the array is empty. + + + Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition. + The array to get the element from. + The condition the element must satisfy. + The type of element contained by the collection. + More than one element satisfies the condition in . + The element if it satisfies the specified condition; otherwise the default element. + + + Copies the contents of this array to a mutable array. + The immutable array to copy into a mutable one. + The type of element contained by the collection. + The newly instantiated array. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Filters a sequence of values based on a predicate. + The array to filter. + The condition to use for filtering the array content. + The type of element contained by the collection. + Returns that contains elements that meet the condition. + + + An unsafe class that provides a set of methods to access the underlying data representations of immutable collections. + + + Gets the underlying array for an input value. + The input value to get the underlying array from. + The type of elements in the input value. + The underlying array for , if present. + + + Gets an value wrapping the input array. + The input array to wrap in the returned value. + The type of elements in the input array. + An value wrapping . + + + \ No newline at end of file diff --git a/packages/System.Collections.Immutable.8.0.0/lib/net7.0/System.Collections.Immutable.dll b/packages/System.Collections.Immutable.8.0.0/lib/net7.0/System.Collections.Immutable.dll new file mode 100644 index 0000000..60699b4 Binary files /dev/null and b/packages/System.Collections.Immutable.8.0.0/lib/net7.0/System.Collections.Immutable.dll differ diff --git a/packages/System.Collections.Immutable.8.0.0/lib/net7.0/System.Collections.Immutable.xml b/packages/System.Collections.Immutable.8.0.0/lib/net7.0/System.Collections.Immutable.xml new file mode 100644 index 0000000..6c749c0 --- /dev/null +++ b/packages/System.Collections.Immutable.8.0.0/lib/net7.0/System.Collections.Immutable.xml @@ -0,0 +1,6100 @@ + + + + System.Collections.Immutable + + + + Provides a set of initialization methods for instances of the class. + + + Creates a from an according to specified key selector function. + An from which to create a . + A function to extract a key from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + A that contains the keys and values selected from the input sequence. + + + Creates a with the specified key/value pairs. + The key/value pairs to use to populate the dictionary. + The comparer implementation to use to compare keys for equality. If , is used. + The type of the keys in the dictionary. + The type of the values in the dictionary. + A that contains the specified keys and values. + + + Creates a from an according to specified key selector and element selector functions. + An from which to create a . + A function to extract a key from each element. + A transform function to produce a result element value from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + The type of the value returned by . + A that contains the keys and values selected from the input sequence. + + + Provides an immutable, read-only dictionary optimized for fast lookup and enumeration. + The type of the keys in the dictionary. + The type of the values in this dictionary. + + + Determines whether the dictionary contains the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the specified key; otherwise, . + + + Copies the elements of the dictionary to an array of type , starting at the specified . + The array that is the destination of the elements copied from the dictionary. + The zero-based index in at which copying begins. + + + Copies the elements of the dictionary to a span of type . + The span that is the destination of the elements copied from the dictionary. + + + Returns an enumerator that iterates through the dictionary. + An enumerator that iterates through the dictionary. + + + Gets either a reference to a in the dictionary or a reference if the key does not exist in the dictionary. + The key used for lookup. + A reference to a in the dictionary or a reference if the key does not exist in the dictionary. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the . + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Removes the element with the specified key from the . + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Adds an element with the provided key and value to the object. + The to use as the key of the element to add. + The to use as the value of the element to add. + + + Removes all elements from the object. + + + Determines whether the object contains an element with the specified key. + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + Returns an object for the object. + An object for the object. + + + Removes the element with the specified key from the object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The key of the value to get. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, the default value for the type of . + + if the dictionary contains an element with the specified key; otherwise, . + + + Gets the comparer used by this dictionary. + + + Gets the number of key/value pairs contained in the dictionary. + + + Gets an empty . + + + Gets a reference to the value associated with the specified key. + The key of the value to get. + + does not exist in the collection. + A reference to the value associated with the specified key. + + + Gets a collection containing the keys in the dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the element that has the specified key in the read-only dictionary. + The key to locate. + The element that has the specified key in the read-only dictionary. + + + Gets an enumerable collection that contains the keys in the read-only dictionary. + An enumerable collection that contains the keys in the read-only dictionary. + + + Gets an enumerable collection that contains the values in the read-only dictionary. + An enumerable collection that contains the values in the read-only dictionary. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + Gets a value indicating whether the object is read-only. + + true if the object is read-only; otherwise, false. + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key, or null if the key does not exist. + + + Gets an object containing the keys of the object. + An object containing the keys of the object. + + + Gets an object containing the values in the object. + An object containing the values in the object. + + + Gets a collection containing the values in the dictionary. + + + Enumerates the elements of a . + + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + + Creates a with the specified values. + The values to use to populate the set. + The comparer implementation to use to compare values for equality. If , is used. + The type of the values in the set. + A frozen set. + + + Provides an immutable, read-only set optimized for fast lookup and enumeration. + The type of the values in this set. + + + Determines whether the set contains the specified element. + The element to locate. + + if the set contains the specified element; otherwise, . + + + Copies the values in the set to an array, starting at the specified . + The array that is the destination of the values copied from the set. + The zero-based index in at which copying begins. + + + Copies the values in the set to a span. + The span that is the destination of the values copied from the set. + + + Returns an enumerator that iterates through the set. + An enumerator that iterates through the set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper subset of other; otherwise, false. + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper superset of other; otherwise, false. + + + Determines whether a set is a subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a subset of other; otherwise, false. + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a superset of other; otherwise, false. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + true if the current set and other share at least one common element; otherwise, false. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + true if the current set is equal to other; otherwise, false. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in the current set, in the specified collection, or in both. + The collection to compare to the current set. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the default value of T when the search yielded no match. + A value indicating whether the search was successful. + + + Gets the comparer used by this set. + + + Gets the number of values contained in the set. + + + Gets an empty . + + + Gets a collection containing the values in the set. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the values of a . + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an immutable collection of key/value pairs. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of keys in the dictionary. + The type of values in the dictionary. + + + Adds an element with the specified key and value to the dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether the immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Represents a list of elements that cannot be modified. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Makes a copy of the list, and adds the specified object to the end of the copied list. + The object to add to the list. + A new list with the object added. + + + Makes a copy of the list and adds the specified objects to the end of the copied list. + The objects to add to the list. + A new list with the elements added. + + + Creates a list with all the items removed, but with the same sorting and ordering semantics as this list. + An empty list that has the same sorting and ordering semantics as this instance. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the . This value can be null for reference types. + The zero-based starting indexes of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use to locate . + The zero-based index of the first occurrence of within the range of elements in the that starts at and contains number of elements if found; otherwise -1. + + + Inserts the specified element at the specified index in the immutable list. + The zero-based index at which to insert the value. + The object to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The zero-based index at which the new elements should be inserted. + The elements to insert. + A new immutable list that includes the specified elements. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to match . + Returns . + + + Removes the first occurrence of a specified object from this immutable list. + The object to remove from the list. + The equality comparer to use to locate . + A new list with the specified object removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes the specified object from the list. + The objects to remove from the list. + The equality comparer to use to determine if match any objects in the list. + A new immutable list with the specified objects removed, if matched objects in the list. + + + Removes a range of elements from the . + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + A new immutable list with the elements removed. + + + Returns a new list with the first matching element in the list replaced with the specified element. + The element to be replaced. + The element to replace the first occurrence of with. + The equality comparer to use for matching . + + does not exist in the list. + A new list that contains , even if is the same as . + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + A new list that contains the new element, even if the element at the specified location is the same as the new element. + + + Represents an immutable first-in, first-out collection of objects. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Returns a new queue with all the elements removed. + An empty immutable queue. + + + Removes the first element in the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue with the first element removed. This value is never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue with the specified element added. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a value that indicates whether this immutable queue is empty. + + if this queue is empty; otherwise, . + + + Represents a set of elements that can only be modified by creating a new instance of the set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored in the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable set contains a specified element. + The element to locate in the set. + + if the set contains the specified value; otherwise, . + + + Removes the elements in the specified collection from the current immutable set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains only elements that exist in this set and the specified set. + The collection to compare to the current . + A new immutable set that contains elements that exist in both sets. + + + Determines whether the current immutable set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a proper (strict) superset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Determines whether the set contains a specified value. + The value to search for. + The matching value from the set, if found, or equalvalue if there are no matches. + + if a matching value was found; otherwise, . + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Represents an immutable last-in-first-out (LIFO) collection. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns the element at the top of the immutable stack without removing it. + The stack is empty. + The element at the top of the stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets a value that indicates whether this immutable stack is empty. + + if this stack is empty; otherwise,. + + + Provides methods for creating an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Searches the sorted immutable array for a specified element using the default comparer and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The comparer implementation to use when comparing elements, or null to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The comparer to use when comparing elements for equality or to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + +-or- + + is , and is of a type that is not compatible with the elements of . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Creates an empty immutable array. + The type of elements stored in the array. + An empty immutable array. + + + Creates an immutable array that contains the specified object. + The object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified object. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The fourth object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array from the specified array of objects. + The array of objects to populate the array with. + The type of elements stored in the array. + An immutable array that contains the array of items. + + + Creates an immutable array with specified objects from another array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an immutable array with the specified objects from another immutable array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates a mutable array that can be converted to an without allocating new memory. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a mutable array that can be converted to an without allocating new memory. + The initial capacity of the builder. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a new populated with the specified items. + The elements to add to the array. + The type of element stored in the array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to pass to the selector mapping function. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to be passed to the selector mapping function. + The type of element to be stored in the target array. + An immutable array that contains the specified items. + + + Creates an immutable array from the specified collection. + The collection of objects to copy to the immutable array. + The type of elements contained in . + An immutable array that contains the specified collection of objects. + + + Creates an immutable array from the current contents of the builder's array. + The builder to create the immutable array from. + The type of elements contained in the immutable array. + An immutable array that contains the current contents of the builder's array. + + + Produce an immutable array of contents from specified elements. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Converts the span to an immutable array. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Represents an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored by the array. + + + Gets an empty immutable array. + + + Returns a copy of the original array with the specified item added to the end. + The item to be added to the end of the array. + A new array with the specified item added to the end. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Returns a new immutable array that contains the elements of this array cast to a different type. + The type of array element to return. + An immutable array that contains the elements of this array, cast to a different type. If the cast fails, returns an array whose property returns . + + + Creates a new read-only memory region over this immutable array. + The read-only memory representation of this immutable array. + + + Creates a new read-only span over this immutable array. + The read-only span representation of this immutable array. + + + Creates a over the portion of the current , beginning at a specified position for a specified length. + The index at which to begin the span. + The number of items in the span. + The representation of the . + + + Creates a span over the portion of the current based on the specified . + A range in the current . + A span representation of the . + + + Initializes a new instance of the struct by casting the underlying array to an array of type . + The type of array element to return. + The cast is illegal. + An immutable array instance with elements cast to the new type. + + + Initializes a new instance of the struct based on the contents of an existing instance, allowing a covariant static cast to efficiently reuse the existing array. + The array to initialize the array with. No copy is made. + The type of array element to return. + An immutable array instance with elements cast to the new type. + + + Returns an array with all the elements removed. + An array with all of the elements removed. + + + Determines whether the specified item exists in the array. + The item to search for. + + if the specified item was found in the array; otherwise . + + + Determines whether the specified item exists in the array. + The item to search for. + The equality comparer to use in the search. + If , is used. + + if an equal value was found in the array; otherwise. + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the contents of this array to the specified array starting at the specified destination index. + The array to copy to. + The index in where copying begins. + + + Copies the specified items in this array to the specified array at the specified starting index. + The index of this array where copying begins. + The array to copy to. + The index in where copying begins. + The number of elements to copy from this array. + + + Copies the elements of current to a . + The that is the destination of the elements copied from current . + + + Indicates whether specified array is equal to this array. + An object to compare with this object. + + if is equal to this array; otherwise, . + + + Determines if this array is equal to the specified object. + The to compare with this array. + + if this array is equal to ; otherwise, . + + + Returns an enumerator that iterates through the contents of the array. + An enumerator. + + + Returns a hash code for this instance. + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + Searches the array for the specified item. + The item to search for. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the item inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Gets a read-only reference to the element at the specified in the read-only list. + The zero-based index of the element to get a reference to. + A read-only reference to the element at the specified in the read-only list. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Filters the elements of this array to those assignable to the specified type. + The type to filter the elements of the sequence on. + An that contains elements from the input sequence of type of . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates whether two arrays are not equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are not equal; otherwise, . + + + Checks for inequality between two array. + The object to the left of the operator. + The object to the right of the operator. + + if the two arrays are not equal; otherwise, . + + + Returns an array with the first occurrence of the specified element removed from the array. If no match is found, the current array is returned. + The item to remove. + A new array with the item removed. + + + Returns an array with the first occurrence of the specified element removed from the array. + + If no match is found, the current array is returned. + The item to remove. + The equality comparer to use in the search. + A new array with the specified item removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the item at the specified index removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + A new array with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + A new list with the elements removed. + + + Removes the specified items from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The item to add to the list. + The new array that contains at the specified index. + + + Forms a slice out of the current starting at a specified index for a specified length. + The index at which to begin this slice. + The desired length for the slice. + An that consists of elements from the current , starting at . + + + Sorts the elements in the immutable array using the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the immutable array using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the entire using the specified . + The to use when comparing elements. + + is null. + The sorted list. + + + Sorts the specified elements in the immutable array using the specified comparer. + The index of the first element to sort. + The number of elements to include in the sort. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Throws in all cases. + The item to add to the end of the array. + + + Throws in all cases. + + + Throws in all cases. + The object to remove from the array. + Throws in all cases. + + + Returns an enumerator that iterates through the array. + The property returns . + An enumerator that can be used to iterate through the array. + + + Throws in all cases. + The index of the location to insert the item. + The item to insert. + + + Throws in all cases. + The index. + + + Copies this array to another array starting at the specified index. + The array to copy this array to. + The index in the destination array to start the copy operation. + + + Returns an enumerator that iterates through the immutable array. + The property returns . + An enumerator that iterates through the immutable array. + + + Throws in all cases. + The value to add to the array. + Thrown in all cases. + Throws in all cases. + + + Throws in all cases. + Thrown in all cases. + + + Throws in all cases. + The value to check for. + Throws in all cases. + + + Gets the value at the specified index. + The value to return the index of. + The value of the element at the specified index. + + + Throws in all cases. + Index that indicates where to insert the item. + The value to insert. + Thrown in all cases. + + + Throws in all cases. + The value to remove from the array. + Thrown in all cases. + + + Throws in all cases. + The index of the item to remove. + Thrown in all cases. + + + Returns a copy of the original array with the specified item added to the end. + The value to add to the end of the array. + A new array with the specified item added to the end. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the end of the array. + A new array with the elements added to the end. + + + Returns an array with all the elements removed. + An array with all the elements removed. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the specified value inserted. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new array with the specified values inserted. + + + Returns an array with the first occurrence of the specified element removed from the array; if no match is found, the current array is returned. + The value to remove from the array. + The equality comparer to use in the search. + A new array with the value removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the specified item removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The value to add to the list. + The new array that contains at the specified index. + + + Determines whether the current collection element precedes, occurs in the same position as, or follows another element in the sort order. + The element to compare with the current instance. + The object used to compare members of the current array with the corresponding members of other array. + The arrays are not the same length. + An integer that indicates whether the current element precedes, is in the same position or follows the other element. + + + Determines whether this array is structurally equal to the specified array. + The array to compare with the current instance. + An object that determines whether the current instance and other are structurally equal. + + if the two arrays are structurally equal; otherwise, . + + + Returns a hash code for the current instance. + An object that computes the hash code of the current object. + The hash code for the current instance. + + + Creates a mutable array that has the same contents as this array and can be efficiently mutated across multiple operations using standard mutable interfaces. + The new builder with the same contents as this array. + + + Gets a value indicating whether this array was declared but not initialized. + + if the is ; otherwise, . + + + Gets a value indicating whether this is empty or is not initialized. + + if the is or ; otherwise, . + + + Gets a value indicating whether this is empty. + + if the is empty; otherwise, . + + + Gets the element at the specified index in the immutable array. + The zero-based index of the element to get. + The element at the specified index in the immutable array. + + + Gets the number of elements in the array. + The number of elements in the array. + + + Gets the number of items in the collection. + The property returns . + Number of items in the collection. + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the element at the specified index in the read-only list. + The zero-based index of the element to get. + Always thrown from the setter. + The property returns . + The element at the specified index in the read-only list. + + + Gets the number of items in the collection. + The property returns . + The number of items in the collection. + + + Gets the element at the specified index. + The index. + The property returns . + The element. + + + Gets the size of the array. + The property returns . + The number of items in the collection. + + + See the interface. Always returns since since immutable collections are thread-safe. + Boolean value determining whether the collection is thread-safe. + + + Gets the sync root. + An object for synchronizing access to the collection. + + + Gets a value indicating whether this instance is fixed size. + + if this instance is fixed size; otherwise, . + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Always thrown from the setter. + The property returns . + The object at the specified index. + + + A writable array accessor that can be converted into an instance without allocating extra memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the array. + The object to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + The type that derives from the type of item already in the array. + + + Removes all items from the array. + + + Determines whether the array contains a specific value. + The object to locate in the array. + + if the object is found; otherwise, . + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the current contents to the specified array. + The array to copy to. + The index to start the copy operation. + + + Copies the contents of this array to the specified array. + The index into this collection of the first element to copy. + The array to copy to. + The index into the destination array to which the first copied element is written. + The number of elements to copy. + + + Copies the current contents to the specified . + The to copy to. + + + Returns the current contents as an and sets the collection to a zero length array. + An immutable array. + + + Gets an object that can be used to iterate through the collection. + An object that can be used to iterate through the collection. + + + Determines the index of a specific item in the array. + The item to locate in the array. + The index of if it's found in the list; otherwise, -1. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The index of if it's found in the list; otherwise, -1. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + If , is used. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The number of elements to search. + The index of if it's found in the list; otherwise, -1. + + + Determines the index for the specified item. + The item to locate in the array. + The index at which to begin the search. + The starting position of the search. + The equality comparer to use in the search. + The index of if it's found in the list; otherwise, -1. + + + Inserts an item in the array at the specified index. + The zero-based index at which to insert the item. + The object to insert into the array. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Gets a read-only reference to the element at the specified index. + The item index. + + is greater or equal to the array count. + The read-only reference to the element at the specified index. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The 0-based index where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Extracts the internal array as an and replaces it with a zero length array. + When doesn't equal . + An immutable array containing the elements of the builder. + + + Removes the specified element. + The item to remove. + + if was found and removed; otherwise, . + + + Removes the first occurrence of the specified element from the builder. + If no match is found, the builder remains unchanged. + The element to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + + + Removes the item at the specified index from the array. + The zero-based index of the item to remove. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified values from this list. + The 0-based index into the array for the element to omit from the returned array. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + + + Reverses the order of elements in the collection. + + + Sorts the contents of the array. + + + Sorts the contents of the array. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Sorts the elements in the entire array using the specified . + The to use when comparing elements. + + is null. + + + Sorts the contents of the array. + The starting index for the sort. + The number of elements to include in the sort. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Creates a new array with the current contents of this . + A new array with the contents of this . + + + Returns an immutable array that contains the current contents of this . + An immutable array that contains the current contents of this . + + + Gets or sets the length of the internal array. When set, the internal array is reallocated to the given capacity if it is not already the specified length. + The length of the internal array. + + + Gets or sets the number of items in the array. + The number of items in the array. + + + Gets or sets the item at the specified index. + The index of the item to get or set. + The specified index is not in the array. + The item at the specified index. + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + An array enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances to the next value in the array. + + if another item exists in the array; otherwise, . + + + Gets the current item. + The current item. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Determines whether the specified immutable dictionary contains the specified key/value pair. + The immutable dictionary to search. + The key to locate in the immutable dictionary. + The value to locate on the specified key, if the key is found. + The type of the keys in the immutable dictionary. + The type of the values in the immutable dictionary. + + if this map contains the specified key/value pair; otherwise, . + + + Creates an empty immutable dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates a new immutable dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary that contains the specified items. + The items used to populate the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The comparer implementation to use to compare values for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The type of the key. + The type of the value. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The type of the key. + The type of the value. + The value for the key, or if no matching key was found. + + + Constructs an immutable dictionary from an existing collection of elements, applying a transformation function to the source keys. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Constructs an immutable dictionary based on some transformation of a sequence. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The key comparer to use for the dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable dictionary from the current contents of the builder's dictionary. + The builder to create the immutable dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Represents an immutable, unordered collection of keys and values. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the keys in the dictionary. + The type of the values in the dictionary. + + + Gets an empty immutable dictionary. + + + Adds an element with the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the immutable dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified key. + The key to locate. + + if the immutable dictionary contains an element with the specified key; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the immutable dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the immutable dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the additional key/value pair. + + + See the interface. + Sequence of key/value pairs to be added to the dictionary. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key-value comparison rules as this dictionary instance. + The immutable dictionary instance. + + + See the interface. + Key of the entry to be removed. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + See the interface. + Sequence of keys to be removed. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + See the interface. + Key of entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the specified key/value pair. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + The key-value pairs to set on the map. Any keys that conflict with existing keys will replace the previous values. + A copy of the immutable dictionary with updated key-value pairs. + + + Creates an immutable dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Gets an instance of the immutable dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The type of the key. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable dictionary. + The key comparer. + + + Gets the keys in the immutable dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The type of the key. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable dictionary. + The values in the immutable dictionary. + + + Represents a hash map that mutates with little or no memory allocations and that can produce or build on immutable hash map instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + + is null. + An element with the same key already exists in the dictionary. + The dictionary is read-only. + + + Adds the specified item to the immutable dictionary. + The object to add to the dictionary. + The dictionary is read-only. + + + Adds a sequence of values to this collection. + The items to add to this collection. + + + Removes all items from the immutable dictionary. + The dictionary is read-only. + + + Determines whether the immutable dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified key. + The key to locate in the dictionary. + + is null. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified value. + The value to locate in the immutable dictionary. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the collection. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + + is null. + The dictionary is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the dictionary. + + + Removes the first occurrence of a specific object from the immutable dictionary. + The object to remove from the dictionary. + The dictionary is read-only. + + if was successfully removed from the dictionary; otherwise, . This method also returns false if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable dictionary. + The keys for entries to remove from the dictionary. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array of type that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable dictionary based on the contents of this instance. + An immutable dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Returns the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, returns the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the immutable dictionary contains an element with the specified key; otherwise, . + + + Gets the number of elements contained in the immutable dictionary. + The number of elements contained in the immutable dictionary. + + + Gets or sets the element with the specified key. + The element to get or set. + + is . + The property is being retrieved, and is not found. + The property is being set, and the is read-only. + The element that has the specified key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a collection that contains the keys of the immutable dictionary. + A collection that contains the keys of the object that implements the immutable dictionary. + + + Gets a value that indicates whether the collection is read-only. + + if the collection is read-only; otherwise, . + + + Gets a collection containing the keys of the generic dictionary. + A collection containing the keys of the object that implements the generic dictionary. + + + Gets a collection containing the values in the generic dictionary. + A collection containing the values in the object that implements the generic dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + Value stored under specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of the immutable dictionary without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable dictionary. + The dictionary was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the dictionary. + The dictionary was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element in the dictionary at the current position of the enumerator. + + + Gets the current element. + Current element in enumeration. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable hash set. + The type of items to be stored in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the specified array of items. + An array that contains the items to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates an empty immutable hash set that uses the specified equality comparer. + The object to use for comparing objects in the set for equality. + The type of items in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the items in the specified collection and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + An array that contains the items to prepopulate the hash set with. + The type of items stored in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The equality comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable collection prefilled with the specified items. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable hash set builder. + The type of items stored by the collection. + The immutable hash set builder. + + + Creates a new immutable hash set builder. + The object to use for comparing objects in the set for equality. + The type of items stored by the collection. + The new immutable hash set builder. + + + Creates a new immutable hash set prefilled with the specified items. + The items to add to the hash set. + The type of items stored by the collection. + The new immutable hash set that contains the specified items. + + + Creates a new immutable hash set that contains the specified items and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The items add to the collection before immutability is applied. + The type of items stored in the collection. + The new immutable hash set. + + + Enumerates a sequence and produces an immutable hash set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable hash set of its contents, and uses the specified equality comparer for the set type. + The sequence to enumerate. + The object to use for comparing objects in the set for equality. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence and uses the specified equality comparer. + + + Creates an immutable hash set from the current contents of the builder's set. + The builder to create the immutable hash set from. + The type of the elements in the hash set. + An immutable hash set that contains the current contents in the builder's set. + + + Represents an immutable, unordered hash set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the hash set. + + + Gets an immutable hash set for this type that uses the default . + + + Adds the specified element to the hash set. + The element to add to the set. + A hash set that contains the added value and any values previously held by the object. + + + Retrieves an empty immutable hash set that has the same sorting and ordering semantics as this instance. + An empty hash set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable hash set contains the specified element. + The object to locate in the immutable hash set. + + if is found in the ; otherwise, . + + + Removes the elements in the specified collection from the current immutable hash set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Determines whether the current immutable hash set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable hash set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable hash set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable hash set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Adds an item to the set. + The object to add to the set. + The set is read-only. + + + Removes all items from this set. + The set is read-only. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + + if the element is successfully removed; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that iterates through the collection. + + + Adds an element to the current set and returns a value that indicates whether the element was successfully added. + The element to add to the collection. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current collection. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or in the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a set. + An enumerator that can be used to iterate through the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting or ordering semantics as this instance. + + + Removes the elements in the specified collection from the current set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates an immutable hash set that has the same contents as this set and can be efficiently mutated across multiple operations by using standard mutable interfaces. + A set with the same contents as this set that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Creates a new immutable hash set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable hash set with the items added; or the original set if all the items were already in the set. + + + Gets an instance of the immutable hash set that uses the specified equality comparer for its search methods. + The equality comparer to use. + An instance of this immutable hash set that uses the given comparer. + + + Gets the number of elements in the immutable hash set. + The number of elements in the hash set. + + + Gets a value that indicates whether the current immutable hash set is empty. + + if this instance is empty; otherwise, . + + + Gets the object that is used to obtain hash codes for the keys and to check the equality of values in the immutable hash set. + The comparer used to obtain hash codes for the keys and check equality. + + + See the interface. + + if the is read-only; otherwise, . + + + See the interface. + + if access to the is synchronized (thread safe); otherwise, . + + + See . + An object that can be used to synchronize access to the . + + + Represents a hash set that mutates with little or no memory allocations and that can produce or build on immutable hash set instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the immutable hash set. + The item to add. + + if the item did not already belong to the collection; otherwise, . + + + Removes all items from the immutable hash set. + The hash set is read-only. + + + Determines whether the immutable hash set contains a specific value. + The object to locate in the hash set. + + if is found in the hash set ; otherwise, . + + + Removes all elements in the specified collection from the current hash set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the immutable hash set. + An enumerator that can be used to iterate through the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of a specific object from the immutable hash set. + The object to remove from the set. + The set is read-only. + + if was successfully removed from the set ; otherwise, . This method also returns if is not found in the original set. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an item to the hash set. + The object to add to the set. + The set is read-only. + + + Copies the elements of the hash set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the hash set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current set. + + + Gets the number of elements contained in the immutable hash set. + The number of elements contained in the immutable hash set. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Enumerates the contents of the immutable hash set without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable hash set. + The hash set was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the hash set. + + + Sets the enumerator to its initial position, which is before the first element in the hash set. + The hash set was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Gets the current element. + The element in the collection at the current position of the enumerator. + + + Contains interlocked exchange mechanisms for immutable collections. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The value to use if no previous value exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The function that receives the key and returns a new value to add to the dictionary when no value previously exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Atomically enqueues an element to the end of a queue. + The variable or field to atomically update. + The value to enqueue. + The type of items contained in the collection. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified key is not in the dictionary. + The key for the value to get or add. + The value to add to the dictionary the key is not found. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. This delegate will not be invoked more than once. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. + The argument to pass to the value factory. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The type of the argument supplied to the value factory. + The value at the specified key or if the key was not present. + + + Compares two immutable arrays for equality and, if they are equal, replaces one of the arrays. + The destination, whose value is compared with and possibly replaced. + The value that replaces the destination value if the comparison results in equality. + The value that is compared to the value at . + The type of element stored by the array. + The original value in . + + + Sets an array to the specified array and returns a reference to the original array, as an atomic operation. + The array to set to the specified value. + The value to which the parameter is set. + The type of element stored by the array. + The original value of . + + + Sets an array to the specified array if the array has not been initialized. + The array to set to the specified value. + The value to which the parameter is set, if it's not initialized. + The type of element stored by the array. + + if the array was assigned the specified value; otherwise, . + + + Pushes a new element onto the stack. + The stack to update. + The value to push on the stack. + The type of items in the stack. + + + Adds the specified key and value to the dictionary if the key is not in the dictionary. + The dictionary to update with the specified key and value. + The key to add, if is not already defined in the dictionary. + The value to add. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key is not in the dictionary; otherwise, . + + + Atomically removes and returns the specified element at the head of the queue, if the queue is not empty. + The variable or field to atomically update. + Set to the value from the head of the queue, if the queue not empty. + The type of items in the queue. + + if the queue is not empty and the head element is removed; otherwise, . + + + Removes an element from the top of the stack, if there is an element to remove. + The stack to update. + Receives the value removed from the stack, if the stack is not empty. + The type of items in the stack. + + if an element is removed from the stack; otherwise, . + + + Removes the element with the specified key, if the key exists. + The dictionary to update. + The key to remove. + Receives the value of the removed item, if the dictionary is not empty. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key was found and removed; otherwise, . + + + Sets the specified key to the specified value if the specified key already is set to a specific value. + The dictionary to update. + The key to update. + The new value to set. + The current value for in order for the update to succeed. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if and are present in the dictionary and comparison was updated to ; otherwise, . + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data in the immutable array. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data in the immutable array. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable list. + The type of items to be stored in the . + An empty immutable list. + + + Creates a new immutable list that contains the specified item. + The item to prepopulate the list with. + The type of items in the . + A new that contains the specified item. + + + Creates a new immutable list that contains the specified array of items. + An array that contains the items to prepopulate the list with. + The type of items in the . + A new immutable list that contains the specified items. + + + Creates a new immutable list that contains the items from the specified span of items. + A span that contains the items to prepopulate the list with. + The type of items stored by the collection. + A new immutable list that contains the specified items. + + + Creates a new immutable list builder. + The type of items stored by the collection. + The immutable collection builder. + + + Creates a new immutable list that contains the specified items. + The items to add to the list. + The type of items in the . + An immutable list that contains the specified items. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Removes the specified value from this list. + The list to search. + The value to remove. + The type of items in the list. + A new immutable list with the element removed, or this list if the element is not in this list. + + + Removes the specified values from this list. + The list to search. + The items to remove if matches are found in this list. + The type of items in the list. + A new immutable list with the elements removed. + + + Replaces the first equal element in the list with the specified element. + The list to search. + The element to replace. + The element to replace the old element with. + The type of items in the list. + + does not exist in the list. + The new list -- even if the value being replaced is equal to the new value for that position. + + + Enumerates a sequence and produces an immutable list of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable list that contains the items in the specified sequence. + + + Creates an immutable list from the current contents of the builder's collection. + The builder to create the immutable list from. + The type of the elements in the list. + An immutable list that contains the current contents in the builder's collection. + + + Represents an immutable list, which is a strongly typed list of objects that can be accessed by index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Gets an empty immutable list. + + + Adds the specified object to the end of the immutable list. + The object to add. + A new immutable list with the object added. + + + Adds the elements of the specified collection to the end of the immutable list. + The collection whose elements will be added to the end of the list. + A new immutable list with the elements added. + + + Searches the entire sorted list for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be for reference types. + The default comparer cannot find a comparer implementation of the for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches the entire sorted list for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements or null to use the default comparer. + comparer is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches a range of elements in the sorted list for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements, or to use the default comparer. + index is less than 0 or is less than 0. + index and do not denote a valid range in the list. + + is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted list, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Removes all elements from the immutable list. + An empty list that retains the same sort or unordered semantics that this instance has. + + + Determines whether this immutable list contains the specified value. + The value to locate. + + if the list contains the specified value; otherwise, . + + + Converts the elements in the current immutable list to another type, and returns a list containing the converted elements. + A delegate that converts each element from one type to another type. + The type of the elements of the target array. + A list of the target type containing the converted elements from the current . + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Copies a range of elements from the immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list that contains all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Performs the specified action on each element of the immutable list. + The delegate to perform on each element of the immutable list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the immutable list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the entire immutable list, if found; otherwise, ?1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the list that starts at the specified index and contains the specified number of elements. + The object to locate in the list The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the first occurrence of item within the range of elements in the list that starts at index and contains count number of elements, if found; otherwise, -1. + + + Inserts the specified object into the immutable list at the specified index. + The zero-based index at which to insert the object. + The object to insert. + The new immutable list after the object is inserted. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which to insert the elements. + The collection whose elements should be inserted. + The new immutable list after the elements are inserted. + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + + is negative or not less than . + A read-only reference to the element at the given position. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the list that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the last occurrence of item within the range of elements in the list that contains count number of elements and ends at index, if found; otherwise, -1. + + + Removes the first occurrence of the specified object from this immutable list. + The object to remove. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes the first occurrence of the object that matches the specified value from this immutable list. + The value of the element to remove from the list. + The equality comparer to use in the search. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The new list with the elements removed. + + + Removes the element at the specified index. + The zero-based index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list. + The collection whose elements should be removed if matches are found in this list. + A new list with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes a range of elements, starting from the specified index and containing the specified number of elements, from this immutable list. + The starting index to begin removal. + The number of elements to remove. + A new list with the elements removed. + + + Replaces the specified element in the immutable list with a new element. + The element to replace. + The element to replace with. + + does not exist in the immutable list. + The new list with the replaced element, even if it is equal to the old element. + + + Replaces the specified element in the immutable list with a new element. + The element to replace in the list. + The element to replace with. + The comparer to use to check for equality. + A new list with the object replaced, or this list if the specified object is not in this list. + + + Reverses the order of the elements in the entire immutable list. + The reversed list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + The reversed list. + + + Replaces an element at a given position in the immutable list with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list with the replaced element, even if it is equal to the old element at that position. + + + Sorts the elements in the entire immutable list using the default comparer. + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The delegate to use when comparing elements. + + is . + The sorted list. + + + Sorts a range of elements in the immutable list using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Adds the specified item to the immutable list. + The item to add. + Always thrown. + + + Removes all items from the immutable list. + + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove. + Always thrown. + + if was successfully removed from the list; otherwise, . This method also returns if is not found in the original list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Inserts an object in the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert. + + + + Removes the value at the specified index. + The zero-based index of the item to remove. + + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from immutable list. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Adds an item to the immutable list. + The object to add to the list. + Always thrown. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the list. + + + Removes all items from the immutable list. + Always thrown. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + + if the object is found in the list; otherwise, . + + + Determines the index of a specific item in the immutable list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item into the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + Always thrown. + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + Always thrown. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove. + Always thrown. + + + Adds the specified value to this immutable list. + The value to add. + A new list with the element added. + + + Adds the specified values to this immutable list. + The values to add. + A new list with the elements added. + + + Retrieves an empty list that has the same sorting and ordering semantics as this instance. + An empty list that has the same sorting and ordering semantics as this instance. + + + Inserts the specified element at the specified index in the immutable list. + The index at which to insert the value. + The element to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The index at which to insert the elements. + The elements to insert. + A new immutable list that includes the specified elements. + + + Removes the element with the specified value from the list. + The value of the element to remove from the list. + The comparer to use to compare elements for equality. + A new with the specified element removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list that match the items specified. + The range of items to remove from the list, if found. + The equality comparer to use to compare elements. + + or is . + An immutable list with the items removed. + + + Removes the specified number of elements at the specified location from this list. + The starting index of the range of elements to remove. + The number of elements to remove. + A new list with the elements removed. + + + Replaces an element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + + does not exist in the list. + The new list. + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list. + + + Creates a list that has the same contents as this list and can be efficiently mutated across multiple operations using standard mutable interfaces. + The created list with the same contents as this list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements contained in the list. + The number of elements in the list. + + + Gets a value that indicates whether this list is empty. + + if the list is empty; otherwise, . + + + Gets the element at the specified index of the list. + The index of the element to retrieve. + In a get operation, is negative or not less than . + The element at the specified index. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the value at the specified index. + The zero-based index of the item to access. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + Value stored in the specified index. + + + This type is immutable, so it is always thread-safe. See the interface. + Boolean value determining whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value indicating whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + The value at the specified index. + + + Represents a list that mutates with little or no memory allocations and that can produce or build on immutable list instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an item to the immutable list. + The item to add to the list. + + + Adds a series of elements to the end of this list. + The elements to add to the end of the list. + + + Searches the entire for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the entire for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the specified range of the for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is less than 0. +-or- + + is less than 0. + + and do not denote a valid range in the . + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Removes all items from the immutable list. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + if item is found in the list; otherwise, . + + + Creates a new immutable list from the list represented by this builder by using the converter function. + The converter function. + The type of the output of the delegate converter function. + A new immutable list from the list represented by this builder. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list containing all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Performs the specified action on each element of the list. + The delegate to perform on each element of the list. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the range of elements in the immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Inserts an item to the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the immutable list. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the immutable list. The collection itself cannot be , but it can contain elements that are null, if type T is a reference type. + + + Gets a read-only reference to the value for a given into the list. + The index of the desired element. + A read-only reference to the value at the specified . + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the last occurrence of within the entire immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that extends from the first element to , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that contains number of elements and ends at , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + + if item was successfully removed from the list; otherwise, . This method also returns if item is not found in the list. + + + Removes the first occurrence matching the specified value from this list. + The item to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The number of elements removed from the immutable list. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove from the list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified range of values from this list. + The starting index to begin removal. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The old value does not exist in the list. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + The old value does not exist in the list. + + + Reverses the order of the elements in the entire immutable list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + + + Sorts the elements in the entire immutable list by using the default comparer. + + + Sorts the elements in the entire immutable list by using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + + + Sorts the elements in the entire immutable list by using the specified comparison object. + The object to use when comparing elements. + + is . + + + Sorts the elements in a range of elements in the immutable list by using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the list to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an item to the list. + The object to add to the list. + + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the list. + + + + Determines whether the list contains a specific value. + The object to locate in the list. + + + if the is found in the list; otherwise, . + + + Determines the index of a specific item in the list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item to the list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + + + + Removes the first occurrence of a specific object from the list. + The object to remove from the list. + + + + Creates an immutable list based on the contents of this instance. + An immutable list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements in this immutable list. + The number of elements in this list. + + + Gets or sets the value for a given index in the list. + The index of the item to get or set. + The value at the specified index. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + The object at the specified index. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances enumeration to the next element of the immutable list. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the list. + + + Sets the enumerator to its initial position, which is before the first element in the immutable list. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable queue. + The type of items to be stored in the immutable queue. + An empty immutable queue. + + + Creates a new immutable queue that contains the specified item. + The item to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified item. + + + Creates a new immutable queue that contains the specified array of items. + An array that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified array of items. + A span that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified items. + The items to add to the queue before immutability is applied. + The type of elements in the queue. + An immutable queue that contains the specified items. + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + The queue to remove the item from. + When this method returns, contains the item from the beginning of the queue. + The type of elements in the immutable queue. + The stack is empty. + The new queue with the item removed. + + + Represents an immutable queue. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Removes all objects from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + When this method returns, contains the element from the beginning of the queue. + The queue is empty. + The new immutable queue with the beginning element removed. + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Returns an enumerator that iterates through the immutable queue. + An enumerator that can be used to iterate through the queue. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a read-only reference to the element at the front of the queue. + The queue is empty. + Read-only reference to the element at the front of the queue. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Gets an empty immutable queue. + An empty immutable queue. + + + Gets a value that indicates whether this immutable queue is empty. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if this queue is empty; otherwise, . + + + Enumerates the contents of an immutable queue without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable queue. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the queue. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates a new immutable sorted dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key comparer. + The comparer implementation to use to evaluate keys for equality and sorting. + The items to add to the sorted dictionary. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + The new immutable sorted dictionary that contains the specified items and uses the specified key comparer. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key and value comparers. + The comparer implementation to use to compare keys for equality and sorting. + The comparer implementation to use to compare values for equality. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items and uses the specified comparers. + + + Creates an immutable sorted dictionary that contains the specified items and uses the default comparer. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable sorted dictionary from the current contents of the builder's dictionary. + The builder to create the immutable sorted dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Represents an immutable sorted dictionary. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the key contained in the dictionary. + The type of the value contained in the dictionary. + + + Gets an empty immutable sorted dictionary. + + + Adds an element with the specified key and value to the immutable sorted dictionary. + The key of the entry to add. + The value of entry to add. + The given key already exists in the dictionary but has a different value. + A new immutable sorted dictionary that contains the additional key/value pair. + + + Adds the specific key/value pairs to the immutable sorted dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable sorted dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable sorted dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether this immutable sorted map contains the specified key. + The key to locate. + + if the immutable dictionary contains the specified key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified value from the immutable sorted dictionary. + The value of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified value cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable sorted dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable sorted dictionary, possibly overwriting an existing value for the given key. + The key of the entry to add. + The key value to set. + A new immutable sorted dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable sorted dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + An immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the generic dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + The instance. + + + See the interface. + Sequence of key/value pairs to be added. + The instance. + + + See the interface. + The instance. + + + See the interface. + Key of entry to be removed. + The instance. + + + See the interface. + Sequence of keys to be removed. + The instance. + + + See the interface. + Key of entry to be updated. + Value of entry to be updated. + The instance. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + A set of key-value pairs to set on the map. + The instance. + + + Creates an immutable sorted dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. + + if the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets an instance of the immutable sorted dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable sorted dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable sorted dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable sorted dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The key to retrieve the value for. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable sorted dictionary. + The key comparer for the dictionary. + + + Gets the keys in the immutable sorted dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The object to use as the key of the element to access. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to be accessed. + Value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable sorted dictionary. + The values in the dictionary. + + + Represents a sorted dictionary that mutates with little or no memory allocations and that can produce or build on immutable sorted dictionary instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable sorted dictionary. + The key of the element to add. + The value of the element to add. + + + Adds the specified item to the immutable sorted dictionary. + The object to add to the dictionary. + + + Adds a sequence of values to the immutable sorted dictionary. + The items to add to the dictionary. + + + Removes all items from the immutable sorted dictionary. + + + Determines whether the immutable sorted dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate in the dictionary. The value can be for reference types. + + if the immutable sorted dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable sorted dictionary. + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original dictionary. + + + Removes the first occurrence of a specific object from the immutable sorted dictionary. + The object to remove from the dictionary. + + if was successfully removed from the dictionary; otherwise, . This method also returns if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable sorted dictionary. + The keys for entries to remove from the dictionary. + + + See . + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + See . + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable sorted dictionary based on the contents of this instance. + An immutable sorted dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets the number of elements in this immutable sorted dictionary. + The number of elements in this dictionary. + + + Gets or sets the value for a specified key in the immutable sorted dictionary. + The key to retrieve the value for. + The value associated with the given key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a strongly typed, read-only collection of elements. + A strongly typed, read-only collection of elements. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Returns a collection containing all keys stored in the dictionary. See . + A collection containing all keys stored in the dictionary. + + + Returns a collection containing all values stored in the dictionary. See . + A collection containing all values stored in the dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value associated with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable sorted dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable sorted dictionary. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted dictionary. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted set. + The type of items to be stored in the immutable set. + An empty immutable sorted set. + + + Creates a new immutable sorted set that contains the specified item. + The item to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates an empty immutable sorted set that uses the specified comparer. + The implementation to use when comparing items in the set. + The type of items in the immutable set. + An empty immutable set. + + + Creates a new immutable sorted set that contains the specified item and uses the specified comparer. + The implementation to use when comparing items in the set. + The item to prepopulate the set with. + The type of items stored in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items and uses the specified comparer. + The implementation to use when comparing items in the set. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable sorted set that contains the specified array of items. + A span that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Returns a collection that can be used to build an immutable sorted set. + The type of items stored by the collection. + The immutable collection builder. + + + Returns a collection that can be used to build an immutable sorted set. + The comparer used to compare items in the set for equality. + The type of items stored by the collection. + The immutable collection. + + + Creates a new immutable collection that contains the specified items. + The comparer to use to compare elements in this set. + The items to add to the set before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Creates a new immutable collection that contains the specified items. + The items to add to the set with before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Enumerates a sequence and produces an immutable sorted set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable sorted set of its contents, and uses the specified comparer. + The sequence to enumerate. + The comparer to use for initializing and adding members to the sorted set. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Creates an immutable sorted set from the current contents of the builder's set. + The builder to create the immutable sorted set from. + The type of the elements in the immutable sorted set. + An immutable sorted set that contains the current contents in the builder's set. + + + Represents an immutable sorted set implementation. + +NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the set. + + + Gets an empty immutable sorted set. + + + Adds the specified value to this immutable sorted set. + The value to add. + A new set with the element added, or this set if the element is already in this set. + + + Removes all elements from the immutable sorted set. + An empty set with the elements removed. + + + Determines whether this immutable sorted set contains the specified value. + The value to check for. + + if the set contains the specified value; otherwise, . + + + Removes a specified set of items from this immutable sorted set. + The items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the immutable sorted set. + An enumerator that can be used to iterate through the set. + + + Gets the position within this immutable sorted set that the specified value appears in. + The value whose position is being sought. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, this method returns a negative number that is the bitwise complement of the index of the first element that is larger than value. If is not found and is greater than any of the elements in the set, this method returns a negative number that is the bitwise complement of the index of the last element plus 1. + + + Creates an immutable sorted set that contains elements that exist both in this set and in the specified set. + The set to intersect with this one. + A new immutable sorted set that contains any elements that exist in both sets. + + + Determines whether the current immutable sorted set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a proper superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current immutable sorted set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference of the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference of the element at the given position. + + + Determines whether the current immutable sorted set and a specified collection share common elements. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the specified value from this immutable sorted set. + The element to remove. + A new immutable sorted set with the element removed, or this set if the element was not found in the set. + + + Returns an that iterates over this immutable sorted set in reverse order. + An enumerator that iterates over the immutable sorted set in reverse order. + + + Determines whether the current immutable sorted set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable sorted set that contains elements that exist either in this set or in a given sequence, but not both. + The other sequence of items. + The new immutable sorted set. + + + Adds the specified value to the collection. + The value to add. + + + Removes all the items from the collection. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the collection. + The object to remove from the collection. + + if was successfully removed from the collection; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Inserts an item in the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + + + Removes the item at the specified index. + The zero-based index of the item to remove. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Adds an item to the set. + The object to add to the set. + The set is read-only or has a fixed size. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the set. + Thrown in all cases. + + + Determines whether the set contains a specific value. + The object to locate in the set. + + if the object is found in the set; otherwise, . + + + Determines the index of a specific item in the set. + The object to locate in the set. + The index of if found in the list; otherwise, -1. + + + Inserts an item into the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + The set is read-only or has a fixed size. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + The set is read-only or has a fixed size. + + + Removes the item at the specified index of the set. + The zero-based index of the item to remove. + The set is read-only or has a fixed size. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Removes the elements in the specified collection from the current immutable set. + The items to remove from this set. + The new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates a collection that has the same contents as this immutable sorted set that can be efficiently manipulated by using standard mutable interfaces. + The sorted set builder. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Adds a given set of items to this immutable sorted set. + The items to add. + The new set with the items added; or the original set if all the items were already in the set. + + + Returns the immutable sorted set that has the specified key comparer. + The comparer to check for. + The immutable sorted set that has the specified key comparer. + + + Gets the number of elements in the immutable sorted set. + The number of elements in the immutable sorted set. + + + Gets a value that indicates whether this immutable sorted set is empty. + + if this set is empty; otherwise, . + + + Gets the element of the immutable sorted set at the given index. + The index of the element to retrieve from the sorted set. + The element at the given index. + + + Gets the comparer used to sort keys in the immutable sorted set. + The comparer used to sort keys. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Returns true, since immutable collections are always read-only. See the interface. + A boolean value indicating whether the collection is read-only. + + + See the interface. + The zero-based index of the item to access. + The element stored at the specified index. + + + Returns true, since immutable collections are always thread-safe. See the interface. + A boolean value indicating whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + + The . + + + Represents a sorted set that enables changes with little or no memory allocations, and efficiently manipulates or builds immutable sorted sets. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements from this set. + + + Determines whether the set contains the specified object. + The object to locate in the set. + + if is found in the set; otherwise, . + + + Removes the specified set of items from the current set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the set. + A enumerator that can be used to iterate through the set. + + + Searches for the first index within this set that the specified value is contained. + The value to locate within the set. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, returns a negative number that is the bitwise complement of the index of the first element that's larger than . If is not found and is greater than any of the elements in the set, returns a negative number that is the bitwise complement of (the index of the last element plus 1). + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection is compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference to the element at the given position. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of the specified object from the set. + The object to remove from the set. + + if was removed from the set; if was not found in the set. + + + Returns an enumerator that iterates over the immutable sorted set in reverse order. + An enumerator that iterates over the set in reverse order. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Creates an immutable sorted set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current state. + + + Gets the number of elements in the immutable sorted set. + The number of elements in this set. + + + Gets the element of the set at the given index. + The 0-based index of the element in the set to return. + The element at the given position. + + + Gets or sets the object that is used to determine equality for the values in the immutable sorted set. + The comparer that is used to determine equality for the values in the set. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread-safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Advances the enumerator to the next element of the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted set. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Gets the element at the current position of the enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable stack. + The type of items to be stored in the immutable stack. + An empty immutable stack. + + + Creates a new immutable stack that contains the specified item. + The item to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable collection that contains the specified item. + + + Creates a new immutable stack that contains the specified array of items. + An array that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified array of items. + A span that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified items. + The items to add to the stack before it's immutable. + The type of items in the stack. + An immutable stack that contains the specified items. + + + Removes the specified item from an immutable stack. + The stack to modify. + The item to remove from the stack. + The type of items contained in the stack. + The stack is empty. + A stack; never . + + + Represents an immutable stack. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element on the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns an enumerator that iterates through the immutable stack. + An enumerator that can be used to iterate through the stack. + + + Returns the object at the top of the stack without removing it. + The stack is empty. + The object at the top of the stack. + + + Gets a read-only reference to the element on the top of the stack. + The stack is empty. + A read-only reference to the element on the top of the stack. + + + Removes the element at the top of the immutable stack and returns the stack after the removal. + The stack is empty. + A stack; never . + + + Removes the specified element from the immutable stack and returns the stack after the removal. + The value to remove from the stack. + A stack; never . + + + Inserts an object at the top of the immutable stack and returns the new stack. + The object to push onto the stack. + The new stack. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable stack. + The empty immutable stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets an empty immutable stack. + An empty immutable stack. + + + Gets a value that indicates whether this instance of the immutable stack is empty. + + if this instance is empty; otherwise, . + + + Enumerates the contents of an immutable stack without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable stack. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the stack. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + LINQ extension method overrides that offer greater efficiency for than the standard LINQ methods + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + A function to be invoked on each element, in a cumulative way. + The type of element contained by the collection. + The final value after the cumulative function has been applied to all elements. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + The type of the accumulated value. + The type of element contained by the collection. + The final accumulator value. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + A function to transform the final accumulator value into the result type. + The type of the accumulated value. + The type of result returned by the result selector. + The type of element contained by the collection. + The final accumulator value. + + + Gets a value indicating whether all elements in this array match a given condition. + The array to check for matches. + The predicate. + The type of element contained by the collection. + + if every element of the source sequence passes the test in the specified predicate; otherwise, . + + + Returns a value indicating whether this collection contains any elements. + The builder to check for matches. + The type of elements in the array. + + if the array builder contains any elements; otherwise, . + + + Gets a value indicating whether the array contains any elements. + The array to check for elements. + The type of element contained by the collection. + + if the array contains an elements; otherwise, . + + + Gets a value indicating whether the array contains any elements that match a specified condition. + The array to check for elements. + The delegate that defines the condition to match to an element. + The type of element contained by the collection. + + if an element matches the specified condition; otherwise, . + + + Returns the element at a specified index in the array. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index. + + + Returns the element at a specified index in a sequence or a default value if the index is out of range. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index, or the default value if the index is not found. + + + Returns the first element in the collection. + The builder to retrieve an item from. + The type of items in the array. + If the array is empty. + The first item in the list. + + + Returns the first element in an array. + The array to get an item from. + The type of element contained by the collection. + If the array is empty. + The first item in the array. + + + Returns the first element in a sequence that satisfies a specified condition. + The array to get an item from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + If the array is empty. + The first item in the list if it meets the condition specified by . + + + Returns the first element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of the sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve elements from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the last element in the collection. + The builder to retrieve elements from. + The type of item in the builder. + The collection is empty. + The last element in the builder. + + + Returns the last element of the array. + The array to retrieve items from. + The type of element contained by the array. + The collection is empty. + The last element in the array. + + + Returns the last element of a sequence that satisfies a specified condition. + The array to retrieve elements from. + The delegate that defines the conditions of the element to retrieve. + The type of element contained by the collection. + The collection is empty. + The last element of the array that satisfies the condition. + + + Returns the last element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve an element from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Projects each element of a sequence into a new form. + The immutable array to select items from. + A transform function to apply to each element. + The type of element contained by the collection. + The type of the result element. + An whose elements are the result of invoking the transform function on each element of source. + + + Projects each element of a sequence to an , flattens the resulting sequences into one sequence, and invokes a result selector function on each element therein. + The immutable array. + A transform function to apply to each element of the input sequence. + A transform function to apply to each element of the intermediate sequence. + The type of the elements of . + The type of the intermediate elements collected by . + The type of the elements of the resulting sequence. + An whose elements are the result of invoking the one-to-many transform function on each element of and then mapping each of those sequence elements and their corresponding source element to a result element. + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence. + The array to retrieve the element from. + The type of element contained by the collection. + The element in the sequence. + + + Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists. + The immutable array to return a single element from. + The function to test whether an element should be returned. + The type of element contained by the collection. + Returns . + + + Returns the only element of the array, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence. + The array. + The type of element contained by the collection. + + contains more than one element. + The element in the array, or the default value if the array is empty. + + + Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition. + The array to get the element from. + The condition the element must satisfy. + The type of element contained by the collection. + More than one element satisfies the condition in . + The element if it satisfies the specified condition; otherwise the default element. + + + Copies the contents of this array to a mutable array. + The immutable array to copy into a mutable one. + The type of element contained by the collection. + The newly instantiated array. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Filters a sequence of values based on a predicate. + The array to filter. + The condition to use for filtering the array content. + The type of element contained by the collection. + Returns that contains elements that meet the condition. + + + An unsafe class that provides a set of methods to access the underlying data representations of immutable collections. + + + Gets the underlying array for an input value. + The input value to get the underlying array from. + The type of elements in the input value. + The underlying array for , if present. + + + Gets an value wrapping the input array. + The input array to wrap in the returned value. + The type of elements in the input array. + An value wrapping . + + + \ No newline at end of file diff --git a/packages/System.Collections.Immutable.8.0.0/lib/net8.0/System.Collections.Immutable.dll b/packages/System.Collections.Immutable.8.0.0/lib/net8.0/System.Collections.Immutable.dll new file mode 100644 index 0000000..59eff53 Binary files /dev/null and b/packages/System.Collections.Immutable.8.0.0/lib/net8.0/System.Collections.Immutable.dll differ diff --git a/packages/System.Collections.Immutable.8.0.0/lib/net8.0/System.Collections.Immutable.xml b/packages/System.Collections.Immutable.8.0.0/lib/net8.0/System.Collections.Immutable.xml new file mode 100644 index 0000000..6c749c0 --- /dev/null +++ b/packages/System.Collections.Immutable.8.0.0/lib/net8.0/System.Collections.Immutable.xml @@ -0,0 +1,6100 @@ + + + + System.Collections.Immutable + + + + Provides a set of initialization methods for instances of the class. + + + Creates a from an according to specified key selector function. + An from which to create a . + A function to extract a key from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + A that contains the keys and values selected from the input sequence. + + + Creates a with the specified key/value pairs. + The key/value pairs to use to populate the dictionary. + The comparer implementation to use to compare keys for equality. If , is used. + The type of the keys in the dictionary. + The type of the values in the dictionary. + A that contains the specified keys and values. + + + Creates a from an according to specified key selector and element selector functions. + An from which to create a . + A function to extract a key from each element. + A transform function to produce a result element value from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + The type of the value returned by . + A that contains the keys and values selected from the input sequence. + + + Provides an immutable, read-only dictionary optimized for fast lookup and enumeration. + The type of the keys in the dictionary. + The type of the values in this dictionary. + + + Determines whether the dictionary contains the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the specified key; otherwise, . + + + Copies the elements of the dictionary to an array of type , starting at the specified . + The array that is the destination of the elements copied from the dictionary. + The zero-based index in at which copying begins. + + + Copies the elements of the dictionary to a span of type . + The span that is the destination of the elements copied from the dictionary. + + + Returns an enumerator that iterates through the dictionary. + An enumerator that iterates through the dictionary. + + + Gets either a reference to a in the dictionary or a reference if the key does not exist in the dictionary. + The key used for lookup. + A reference to a in the dictionary or a reference if the key does not exist in the dictionary. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the . + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Removes the element with the specified key from the . + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Adds an element with the provided key and value to the object. + The to use as the key of the element to add. + The to use as the value of the element to add. + + + Removes all elements from the object. + + + Determines whether the object contains an element with the specified key. + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + Returns an object for the object. + An object for the object. + + + Removes the element with the specified key from the object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The key of the value to get. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, the default value for the type of . + + if the dictionary contains an element with the specified key; otherwise, . + + + Gets the comparer used by this dictionary. + + + Gets the number of key/value pairs contained in the dictionary. + + + Gets an empty . + + + Gets a reference to the value associated with the specified key. + The key of the value to get. + + does not exist in the collection. + A reference to the value associated with the specified key. + + + Gets a collection containing the keys in the dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the element that has the specified key in the read-only dictionary. + The key to locate. + The element that has the specified key in the read-only dictionary. + + + Gets an enumerable collection that contains the keys in the read-only dictionary. + An enumerable collection that contains the keys in the read-only dictionary. + + + Gets an enumerable collection that contains the values in the read-only dictionary. + An enumerable collection that contains the values in the read-only dictionary. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + Gets a value indicating whether the object is read-only. + + true if the object is read-only; otherwise, false. + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key, or null if the key does not exist. + + + Gets an object containing the keys of the object. + An object containing the keys of the object. + + + Gets an object containing the values in the object. + An object containing the values in the object. + + + Gets a collection containing the values in the dictionary. + + + Enumerates the elements of a . + + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + + Creates a with the specified values. + The values to use to populate the set. + The comparer implementation to use to compare values for equality. If , is used. + The type of the values in the set. + A frozen set. + + + Provides an immutable, read-only set optimized for fast lookup and enumeration. + The type of the values in this set. + + + Determines whether the set contains the specified element. + The element to locate. + + if the set contains the specified element; otherwise, . + + + Copies the values in the set to an array, starting at the specified . + The array that is the destination of the values copied from the set. + The zero-based index in at which copying begins. + + + Copies the values in the set to a span. + The span that is the destination of the values copied from the set. + + + Returns an enumerator that iterates through the set. + An enumerator that iterates through the set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper subset of other; otherwise, false. + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper superset of other; otherwise, false. + + + Determines whether a set is a subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a subset of other; otherwise, false. + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a superset of other; otherwise, false. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + true if the current set and other share at least one common element; otherwise, false. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + true if the current set is equal to other; otherwise, false. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in the current set, in the specified collection, or in both. + The collection to compare to the current set. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the default value of T when the search yielded no match. + A value indicating whether the search was successful. + + + Gets the comparer used by this set. + + + Gets the number of values contained in the set. + + + Gets an empty . + + + Gets a collection containing the values in the set. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the values of a . + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an immutable collection of key/value pairs. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of keys in the dictionary. + The type of values in the dictionary. + + + Adds an element with the specified key and value to the dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether the immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Represents a list of elements that cannot be modified. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Makes a copy of the list, and adds the specified object to the end of the copied list. + The object to add to the list. + A new list with the object added. + + + Makes a copy of the list and adds the specified objects to the end of the copied list. + The objects to add to the list. + A new list with the elements added. + + + Creates a list with all the items removed, but with the same sorting and ordering semantics as this list. + An empty list that has the same sorting and ordering semantics as this instance. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the . This value can be null for reference types. + The zero-based starting indexes of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use to locate . + The zero-based index of the first occurrence of within the range of elements in the that starts at and contains number of elements if found; otherwise -1. + + + Inserts the specified element at the specified index in the immutable list. + The zero-based index at which to insert the value. + The object to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The zero-based index at which the new elements should be inserted. + The elements to insert. + A new immutable list that includes the specified elements. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to match . + Returns . + + + Removes the first occurrence of a specified object from this immutable list. + The object to remove from the list. + The equality comparer to use to locate . + A new list with the specified object removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes the specified object from the list. + The objects to remove from the list. + The equality comparer to use to determine if match any objects in the list. + A new immutable list with the specified objects removed, if matched objects in the list. + + + Removes a range of elements from the . + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + A new immutable list with the elements removed. + + + Returns a new list with the first matching element in the list replaced with the specified element. + The element to be replaced. + The element to replace the first occurrence of with. + The equality comparer to use for matching . + + does not exist in the list. + A new list that contains , even if is the same as . + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + A new list that contains the new element, even if the element at the specified location is the same as the new element. + + + Represents an immutable first-in, first-out collection of objects. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Returns a new queue with all the elements removed. + An empty immutable queue. + + + Removes the first element in the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue with the first element removed. This value is never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue with the specified element added. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a value that indicates whether this immutable queue is empty. + + if this queue is empty; otherwise, . + + + Represents a set of elements that can only be modified by creating a new instance of the set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored in the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable set contains a specified element. + The element to locate in the set. + + if the set contains the specified value; otherwise, . + + + Removes the elements in the specified collection from the current immutable set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains only elements that exist in this set and the specified set. + The collection to compare to the current . + A new immutable set that contains elements that exist in both sets. + + + Determines whether the current immutable set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a proper (strict) superset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Determines whether the set contains a specified value. + The value to search for. + The matching value from the set, if found, or equalvalue if there are no matches. + + if a matching value was found; otherwise, . + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Represents an immutable last-in-first-out (LIFO) collection. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns the element at the top of the immutable stack without removing it. + The stack is empty. + The element at the top of the stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets a value that indicates whether this immutable stack is empty. + + if this stack is empty; otherwise,. + + + Provides methods for creating an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Searches the sorted immutable array for a specified element using the default comparer and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The comparer implementation to use when comparing elements, or null to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The comparer to use when comparing elements for equality or to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + +-or- + + is , and is of a type that is not compatible with the elements of . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Creates an empty immutable array. + The type of elements stored in the array. + An empty immutable array. + + + Creates an immutable array that contains the specified object. + The object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified object. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The fourth object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array from the specified array of objects. + The array of objects to populate the array with. + The type of elements stored in the array. + An immutable array that contains the array of items. + + + Creates an immutable array with specified objects from another array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an immutable array with the specified objects from another immutable array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates a mutable array that can be converted to an without allocating new memory. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a mutable array that can be converted to an without allocating new memory. + The initial capacity of the builder. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a new populated with the specified items. + The elements to add to the array. + The type of element stored in the array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to pass to the selector mapping function. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to be passed to the selector mapping function. + The type of element to be stored in the target array. + An immutable array that contains the specified items. + + + Creates an immutable array from the specified collection. + The collection of objects to copy to the immutable array. + The type of elements contained in . + An immutable array that contains the specified collection of objects. + + + Creates an immutable array from the current contents of the builder's array. + The builder to create the immutable array from. + The type of elements contained in the immutable array. + An immutable array that contains the current contents of the builder's array. + + + Produce an immutable array of contents from specified elements. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Converts the span to an immutable array. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Represents an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored by the array. + + + Gets an empty immutable array. + + + Returns a copy of the original array with the specified item added to the end. + The item to be added to the end of the array. + A new array with the specified item added to the end. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Returns a new immutable array that contains the elements of this array cast to a different type. + The type of array element to return. + An immutable array that contains the elements of this array, cast to a different type. If the cast fails, returns an array whose property returns . + + + Creates a new read-only memory region over this immutable array. + The read-only memory representation of this immutable array. + + + Creates a new read-only span over this immutable array. + The read-only span representation of this immutable array. + + + Creates a over the portion of the current , beginning at a specified position for a specified length. + The index at which to begin the span. + The number of items in the span. + The representation of the . + + + Creates a span over the portion of the current based on the specified . + A range in the current . + A span representation of the . + + + Initializes a new instance of the struct by casting the underlying array to an array of type . + The type of array element to return. + The cast is illegal. + An immutable array instance with elements cast to the new type. + + + Initializes a new instance of the struct based on the contents of an existing instance, allowing a covariant static cast to efficiently reuse the existing array. + The array to initialize the array with. No copy is made. + The type of array element to return. + An immutable array instance with elements cast to the new type. + + + Returns an array with all the elements removed. + An array with all of the elements removed. + + + Determines whether the specified item exists in the array. + The item to search for. + + if the specified item was found in the array; otherwise . + + + Determines whether the specified item exists in the array. + The item to search for. + The equality comparer to use in the search. + If , is used. + + if an equal value was found in the array; otherwise. + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the contents of this array to the specified array starting at the specified destination index. + The array to copy to. + The index in where copying begins. + + + Copies the specified items in this array to the specified array at the specified starting index. + The index of this array where copying begins. + The array to copy to. + The index in where copying begins. + The number of elements to copy from this array. + + + Copies the elements of current to a . + The that is the destination of the elements copied from current . + + + Indicates whether specified array is equal to this array. + An object to compare with this object. + + if is equal to this array; otherwise, . + + + Determines if this array is equal to the specified object. + The to compare with this array. + + if this array is equal to ; otherwise, . + + + Returns an enumerator that iterates through the contents of the array. + An enumerator. + + + Returns a hash code for this instance. + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + Searches the array for the specified item. + The item to search for. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the item inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Gets a read-only reference to the element at the specified in the read-only list. + The zero-based index of the element to get a reference to. + A read-only reference to the element at the specified in the read-only list. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Filters the elements of this array to those assignable to the specified type. + The type to filter the elements of the sequence on. + An that contains elements from the input sequence of type of . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates whether two arrays are not equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are not equal; otherwise, . + + + Checks for inequality between two array. + The object to the left of the operator. + The object to the right of the operator. + + if the two arrays are not equal; otherwise, . + + + Returns an array with the first occurrence of the specified element removed from the array. If no match is found, the current array is returned. + The item to remove. + A new array with the item removed. + + + Returns an array with the first occurrence of the specified element removed from the array. + + If no match is found, the current array is returned. + The item to remove. + The equality comparer to use in the search. + A new array with the specified item removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the item at the specified index removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + A new array with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + A new list with the elements removed. + + + Removes the specified items from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The item to add to the list. + The new array that contains at the specified index. + + + Forms a slice out of the current starting at a specified index for a specified length. + The index at which to begin this slice. + The desired length for the slice. + An that consists of elements from the current , starting at . + + + Sorts the elements in the immutable array using the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the immutable array using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the entire using the specified . + The to use when comparing elements. + + is null. + The sorted list. + + + Sorts the specified elements in the immutable array using the specified comparer. + The index of the first element to sort. + The number of elements to include in the sort. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Throws in all cases. + The item to add to the end of the array. + + + Throws in all cases. + + + Throws in all cases. + The object to remove from the array. + Throws in all cases. + + + Returns an enumerator that iterates through the array. + The property returns . + An enumerator that can be used to iterate through the array. + + + Throws in all cases. + The index of the location to insert the item. + The item to insert. + + + Throws in all cases. + The index. + + + Copies this array to another array starting at the specified index. + The array to copy this array to. + The index in the destination array to start the copy operation. + + + Returns an enumerator that iterates through the immutable array. + The property returns . + An enumerator that iterates through the immutable array. + + + Throws in all cases. + The value to add to the array. + Thrown in all cases. + Throws in all cases. + + + Throws in all cases. + Thrown in all cases. + + + Throws in all cases. + The value to check for. + Throws in all cases. + + + Gets the value at the specified index. + The value to return the index of. + The value of the element at the specified index. + + + Throws in all cases. + Index that indicates where to insert the item. + The value to insert. + Thrown in all cases. + + + Throws in all cases. + The value to remove from the array. + Thrown in all cases. + + + Throws in all cases. + The index of the item to remove. + Thrown in all cases. + + + Returns a copy of the original array with the specified item added to the end. + The value to add to the end of the array. + A new array with the specified item added to the end. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the end of the array. + A new array with the elements added to the end. + + + Returns an array with all the elements removed. + An array with all the elements removed. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the specified value inserted. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new array with the specified values inserted. + + + Returns an array with the first occurrence of the specified element removed from the array; if no match is found, the current array is returned. + The value to remove from the array. + The equality comparer to use in the search. + A new array with the value removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the specified item removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The value to add to the list. + The new array that contains at the specified index. + + + Determines whether the current collection element precedes, occurs in the same position as, or follows another element in the sort order. + The element to compare with the current instance. + The object used to compare members of the current array with the corresponding members of other array. + The arrays are not the same length. + An integer that indicates whether the current element precedes, is in the same position or follows the other element. + + + Determines whether this array is structurally equal to the specified array. + The array to compare with the current instance. + An object that determines whether the current instance and other are structurally equal. + + if the two arrays are structurally equal; otherwise, . + + + Returns a hash code for the current instance. + An object that computes the hash code of the current object. + The hash code for the current instance. + + + Creates a mutable array that has the same contents as this array and can be efficiently mutated across multiple operations using standard mutable interfaces. + The new builder with the same contents as this array. + + + Gets a value indicating whether this array was declared but not initialized. + + if the is ; otherwise, . + + + Gets a value indicating whether this is empty or is not initialized. + + if the is or ; otherwise, . + + + Gets a value indicating whether this is empty. + + if the is empty; otherwise, . + + + Gets the element at the specified index in the immutable array. + The zero-based index of the element to get. + The element at the specified index in the immutable array. + + + Gets the number of elements in the array. + The number of elements in the array. + + + Gets the number of items in the collection. + The property returns . + Number of items in the collection. + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the element at the specified index in the read-only list. + The zero-based index of the element to get. + Always thrown from the setter. + The property returns . + The element at the specified index in the read-only list. + + + Gets the number of items in the collection. + The property returns . + The number of items in the collection. + + + Gets the element at the specified index. + The index. + The property returns . + The element. + + + Gets the size of the array. + The property returns . + The number of items in the collection. + + + See the interface. Always returns since since immutable collections are thread-safe. + Boolean value determining whether the collection is thread-safe. + + + Gets the sync root. + An object for synchronizing access to the collection. + + + Gets a value indicating whether this instance is fixed size. + + if this instance is fixed size; otherwise, . + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Always thrown from the setter. + The property returns . + The object at the specified index. + + + A writable array accessor that can be converted into an instance without allocating extra memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the array. + The object to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + The type that derives from the type of item already in the array. + + + Removes all items from the array. + + + Determines whether the array contains a specific value. + The object to locate in the array. + + if the object is found; otherwise, . + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the current contents to the specified array. + The array to copy to. + The index to start the copy operation. + + + Copies the contents of this array to the specified array. + The index into this collection of the first element to copy. + The array to copy to. + The index into the destination array to which the first copied element is written. + The number of elements to copy. + + + Copies the current contents to the specified . + The to copy to. + + + Returns the current contents as an and sets the collection to a zero length array. + An immutable array. + + + Gets an object that can be used to iterate through the collection. + An object that can be used to iterate through the collection. + + + Determines the index of a specific item in the array. + The item to locate in the array. + The index of if it's found in the list; otherwise, -1. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The index of if it's found in the list; otherwise, -1. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + If , is used. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The number of elements to search. + The index of if it's found in the list; otherwise, -1. + + + Determines the index for the specified item. + The item to locate in the array. + The index at which to begin the search. + The starting position of the search. + The equality comparer to use in the search. + The index of if it's found in the list; otherwise, -1. + + + Inserts an item in the array at the specified index. + The zero-based index at which to insert the item. + The object to insert into the array. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Gets a read-only reference to the element at the specified index. + The item index. + + is greater or equal to the array count. + The read-only reference to the element at the specified index. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The 0-based index where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Extracts the internal array as an and replaces it with a zero length array. + When doesn't equal . + An immutable array containing the elements of the builder. + + + Removes the specified element. + The item to remove. + + if was found and removed; otherwise, . + + + Removes the first occurrence of the specified element from the builder. + If no match is found, the builder remains unchanged. + The element to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + + + Removes the item at the specified index from the array. + The zero-based index of the item to remove. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified values from this list. + The 0-based index into the array for the element to omit from the returned array. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + + + Reverses the order of elements in the collection. + + + Sorts the contents of the array. + + + Sorts the contents of the array. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Sorts the elements in the entire array using the specified . + The to use when comparing elements. + + is null. + + + Sorts the contents of the array. + The starting index for the sort. + The number of elements to include in the sort. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Creates a new array with the current contents of this . + A new array with the contents of this . + + + Returns an immutable array that contains the current contents of this . + An immutable array that contains the current contents of this . + + + Gets or sets the length of the internal array. When set, the internal array is reallocated to the given capacity if it is not already the specified length. + The length of the internal array. + + + Gets or sets the number of items in the array. + The number of items in the array. + + + Gets or sets the item at the specified index. + The index of the item to get or set. + The specified index is not in the array. + The item at the specified index. + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + An array enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances to the next value in the array. + + if another item exists in the array; otherwise, . + + + Gets the current item. + The current item. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Determines whether the specified immutable dictionary contains the specified key/value pair. + The immutable dictionary to search. + The key to locate in the immutable dictionary. + The value to locate on the specified key, if the key is found. + The type of the keys in the immutable dictionary. + The type of the values in the immutable dictionary. + + if this map contains the specified key/value pair; otherwise, . + + + Creates an empty immutable dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates a new immutable dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary that contains the specified items. + The items used to populate the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The comparer implementation to use to compare values for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The type of the key. + The type of the value. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The type of the key. + The type of the value. + The value for the key, or if no matching key was found. + + + Constructs an immutable dictionary from an existing collection of elements, applying a transformation function to the source keys. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Constructs an immutable dictionary based on some transformation of a sequence. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The key comparer to use for the dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable dictionary from the current contents of the builder's dictionary. + The builder to create the immutable dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Represents an immutable, unordered collection of keys and values. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the keys in the dictionary. + The type of the values in the dictionary. + + + Gets an empty immutable dictionary. + + + Adds an element with the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the immutable dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified key. + The key to locate. + + if the immutable dictionary contains an element with the specified key; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the immutable dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the immutable dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the additional key/value pair. + + + See the interface. + Sequence of key/value pairs to be added to the dictionary. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key-value comparison rules as this dictionary instance. + The immutable dictionary instance. + + + See the interface. + Key of the entry to be removed. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + See the interface. + Sequence of keys to be removed. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + See the interface. + Key of entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the specified key/value pair. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + The key-value pairs to set on the map. Any keys that conflict with existing keys will replace the previous values. + A copy of the immutable dictionary with updated key-value pairs. + + + Creates an immutable dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Gets an instance of the immutable dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The type of the key. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable dictionary. + The key comparer. + + + Gets the keys in the immutable dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The type of the key. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable dictionary. + The values in the immutable dictionary. + + + Represents a hash map that mutates with little or no memory allocations and that can produce or build on immutable hash map instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + + is null. + An element with the same key already exists in the dictionary. + The dictionary is read-only. + + + Adds the specified item to the immutable dictionary. + The object to add to the dictionary. + The dictionary is read-only. + + + Adds a sequence of values to this collection. + The items to add to this collection. + + + Removes all items from the immutable dictionary. + The dictionary is read-only. + + + Determines whether the immutable dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified key. + The key to locate in the dictionary. + + is null. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified value. + The value to locate in the immutable dictionary. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the collection. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + + is null. + The dictionary is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the dictionary. + + + Removes the first occurrence of a specific object from the immutable dictionary. + The object to remove from the dictionary. + The dictionary is read-only. + + if was successfully removed from the dictionary; otherwise, . This method also returns false if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable dictionary. + The keys for entries to remove from the dictionary. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array of type that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable dictionary based on the contents of this instance. + An immutable dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Returns the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, returns the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the immutable dictionary contains an element with the specified key; otherwise, . + + + Gets the number of elements contained in the immutable dictionary. + The number of elements contained in the immutable dictionary. + + + Gets or sets the element with the specified key. + The element to get or set. + + is . + The property is being retrieved, and is not found. + The property is being set, and the is read-only. + The element that has the specified key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a collection that contains the keys of the immutable dictionary. + A collection that contains the keys of the object that implements the immutable dictionary. + + + Gets a value that indicates whether the collection is read-only. + + if the collection is read-only; otherwise, . + + + Gets a collection containing the keys of the generic dictionary. + A collection containing the keys of the object that implements the generic dictionary. + + + Gets a collection containing the values in the generic dictionary. + A collection containing the values in the object that implements the generic dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + Value stored under specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of the immutable dictionary without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable dictionary. + The dictionary was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the dictionary. + The dictionary was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element in the dictionary at the current position of the enumerator. + + + Gets the current element. + Current element in enumeration. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable hash set. + The type of items to be stored in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the specified array of items. + An array that contains the items to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates an empty immutable hash set that uses the specified equality comparer. + The object to use for comparing objects in the set for equality. + The type of items in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the items in the specified collection and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + An array that contains the items to prepopulate the hash set with. + The type of items stored in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The equality comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable collection prefilled with the specified items. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable hash set builder. + The type of items stored by the collection. + The immutable hash set builder. + + + Creates a new immutable hash set builder. + The object to use for comparing objects in the set for equality. + The type of items stored by the collection. + The new immutable hash set builder. + + + Creates a new immutable hash set prefilled with the specified items. + The items to add to the hash set. + The type of items stored by the collection. + The new immutable hash set that contains the specified items. + + + Creates a new immutable hash set that contains the specified items and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The items add to the collection before immutability is applied. + The type of items stored in the collection. + The new immutable hash set. + + + Enumerates a sequence and produces an immutable hash set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable hash set of its contents, and uses the specified equality comparer for the set type. + The sequence to enumerate. + The object to use for comparing objects in the set for equality. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence and uses the specified equality comparer. + + + Creates an immutable hash set from the current contents of the builder's set. + The builder to create the immutable hash set from. + The type of the elements in the hash set. + An immutable hash set that contains the current contents in the builder's set. + + + Represents an immutable, unordered hash set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the hash set. + + + Gets an immutable hash set for this type that uses the default . + + + Adds the specified element to the hash set. + The element to add to the set. + A hash set that contains the added value and any values previously held by the object. + + + Retrieves an empty immutable hash set that has the same sorting and ordering semantics as this instance. + An empty hash set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable hash set contains the specified element. + The object to locate in the immutable hash set. + + if is found in the ; otherwise, . + + + Removes the elements in the specified collection from the current immutable hash set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Determines whether the current immutable hash set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable hash set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable hash set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable hash set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Adds an item to the set. + The object to add to the set. + The set is read-only. + + + Removes all items from this set. + The set is read-only. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + + if the element is successfully removed; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that iterates through the collection. + + + Adds an element to the current set and returns a value that indicates whether the element was successfully added. + The element to add to the collection. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current collection. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or in the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a set. + An enumerator that can be used to iterate through the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting or ordering semantics as this instance. + + + Removes the elements in the specified collection from the current set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates an immutable hash set that has the same contents as this set and can be efficiently mutated across multiple operations by using standard mutable interfaces. + A set with the same contents as this set that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Creates a new immutable hash set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable hash set with the items added; or the original set if all the items were already in the set. + + + Gets an instance of the immutable hash set that uses the specified equality comparer for its search methods. + The equality comparer to use. + An instance of this immutable hash set that uses the given comparer. + + + Gets the number of elements in the immutable hash set. + The number of elements in the hash set. + + + Gets a value that indicates whether the current immutable hash set is empty. + + if this instance is empty; otherwise, . + + + Gets the object that is used to obtain hash codes for the keys and to check the equality of values in the immutable hash set. + The comparer used to obtain hash codes for the keys and check equality. + + + See the interface. + + if the is read-only; otherwise, . + + + See the interface. + + if access to the is synchronized (thread safe); otherwise, . + + + See . + An object that can be used to synchronize access to the . + + + Represents a hash set that mutates with little or no memory allocations and that can produce or build on immutable hash set instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the immutable hash set. + The item to add. + + if the item did not already belong to the collection; otherwise, . + + + Removes all items from the immutable hash set. + The hash set is read-only. + + + Determines whether the immutable hash set contains a specific value. + The object to locate in the hash set. + + if is found in the hash set ; otherwise, . + + + Removes all elements in the specified collection from the current hash set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the immutable hash set. + An enumerator that can be used to iterate through the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of a specific object from the immutable hash set. + The object to remove from the set. + The set is read-only. + + if was successfully removed from the set ; otherwise, . This method also returns if is not found in the original set. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an item to the hash set. + The object to add to the set. + The set is read-only. + + + Copies the elements of the hash set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the hash set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current set. + + + Gets the number of elements contained in the immutable hash set. + The number of elements contained in the immutable hash set. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Enumerates the contents of the immutable hash set without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable hash set. + The hash set was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the hash set. + + + Sets the enumerator to its initial position, which is before the first element in the hash set. + The hash set was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Gets the current element. + The element in the collection at the current position of the enumerator. + + + Contains interlocked exchange mechanisms for immutable collections. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The value to use if no previous value exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The function that receives the key and returns a new value to add to the dictionary when no value previously exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Atomically enqueues an element to the end of a queue. + The variable or field to atomically update. + The value to enqueue. + The type of items contained in the collection. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified key is not in the dictionary. + The key for the value to get or add. + The value to add to the dictionary the key is not found. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. This delegate will not be invoked more than once. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. + The argument to pass to the value factory. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The type of the argument supplied to the value factory. + The value at the specified key or if the key was not present. + + + Compares two immutable arrays for equality and, if they are equal, replaces one of the arrays. + The destination, whose value is compared with and possibly replaced. + The value that replaces the destination value if the comparison results in equality. + The value that is compared to the value at . + The type of element stored by the array. + The original value in . + + + Sets an array to the specified array and returns a reference to the original array, as an atomic operation. + The array to set to the specified value. + The value to which the parameter is set. + The type of element stored by the array. + The original value of . + + + Sets an array to the specified array if the array has not been initialized. + The array to set to the specified value. + The value to which the parameter is set, if it's not initialized. + The type of element stored by the array. + + if the array was assigned the specified value; otherwise, . + + + Pushes a new element onto the stack. + The stack to update. + The value to push on the stack. + The type of items in the stack. + + + Adds the specified key and value to the dictionary if the key is not in the dictionary. + The dictionary to update with the specified key and value. + The key to add, if is not already defined in the dictionary. + The value to add. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key is not in the dictionary; otherwise, . + + + Atomically removes and returns the specified element at the head of the queue, if the queue is not empty. + The variable or field to atomically update. + Set to the value from the head of the queue, if the queue not empty. + The type of items in the queue. + + if the queue is not empty and the head element is removed; otherwise, . + + + Removes an element from the top of the stack, if there is an element to remove. + The stack to update. + Receives the value removed from the stack, if the stack is not empty. + The type of items in the stack. + + if an element is removed from the stack; otherwise, . + + + Removes the element with the specified key, if the key exists. + The dictionary to update. + The key to remove. + Receives the value of the removed item, if the dictionary is not empty. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key was found and removed; otherwise, . + + + Sets the specified key to the specified value if the specified key already is set to a specific value. + The dictionary to update. + The key to update. + The new value to set. + The current value for in order for the update to succeed. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if and are present in the dictionary and comparison was updated to ; otherwise, . + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data in the immutable array. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data in the immutable array. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable list. + The type of items to be stored in the . + An empty immutable list. + + + Creates a new immutable list that contains the specified item. + The item to prepopulate the list with. + The type of items in the . + A new that contains the specified item. + + + Creates a new immutable list that contains the specified array of items. + An array that contains the items to prepopulate the list with. + The type of items in the . + A new immutable list that contains the specified items. + + + Creates a new immutable list that contains the items from the specified span of items. + A span that contains the items to prepopulate the list with. + The type of items stored by the collection. + A new immutable list that contains the specified items. + + + Creates a new immutable list builder. + The type of items stored by the collection. + The immutable collection builder. + + + Creates a new immutable list that contains the specified items. + The items to add to the list. + The type of items in the . + An immutable list that contains the specified items. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Removes the specified value from this list. + The list to search. + The value to remove. + The type of items in the list. + A new immutable list with the element removed, or this list if the element is not in this list. + + + Removes the specified values from this list. + The list to search. + The items to remove if matches are found in this list. + The type of items in the list. + A new immutable list with the elements removed. + + + Replaces the first equal element in the list with the specified element. + The list to search. + The element to replace. + The element to replace the old element with. + The type of items in the list. + + does not exist in the list. + The new list -- even if the value being replaced is equal to the new value for that position. + + + Enumerates a sequence and produces an immutable list of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable list that contains the items in the specified sequence. + + + Creates an immutable list from the current contents of the builder's collection. + The builder to create the immutable list from. + The type of the elements in the list. + An immutable list that contains the current contents in the builder's collection. + + + Represents an immutable list, which is a strongly typed list of objects that can be accessed by index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Gets an empty immutable list. + + + Adds the specified object to the end of the immutable list. + The object to add. + A new immutable list with the object added. + + + Adds the elements of the specified collection to the end of the immutable list. + The collection whose elements will be added to the end of the list. + A new immutable list with the elements added. + + + Searches the entire sorted list for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be for reference types. + The default comparer cannot find a comparer implementation of the for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches the entire sorted list for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements or null to use the default comparer. + comparer is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches a range of elements in the sorted list for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements, or to use the default comparer. + index is less than 0 or is less than 0. + index and do not denote a valid range in the list. + + is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted list, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Removes all elements from the immutable list. + An empty list that retains the same sort or unordered semantics that this instance has. + + + Determines whether this immutable list contains the specified value. + The value to locate. + + if the list contains the specified value; otherwise, . + + + Converts the elements in the current immutable list to another type, and returns a list containing the converted elements. + A delegate that converts each element from one type to another type. + The type of the elements of the target array. + A list of the target type containing the converted elements from the current . + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Copies a range of elements from the immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list that contains all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Performs the specified action on each element of the immutable list. + The delegate to perform on each element of the immutable list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the immutable list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the entire immutable list, if found; otherwise, ?1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the list that starts at the specified index and contains the specified number of elements. + The object to locate in the list The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the first occurrence of item within the range of elements in the list that starts at index and contains count number of elements, if found; otherwise, -1. + + + Inserts the specified object into the immutable list at the specified index. + The zero-based index at which to insert the object. + The object to insert. + The new immutable list after the object is inserted. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which to insert the elements. + The collection whose elements should be inserted. + The new immutable list after the elements are inserted. + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + + is negative or not less than . + A read-only reference to the element at the given position. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the list that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the last occurrence of item within the range of elements in the list that contains count number of elements and ends at index, if found; otherwise, -1. + + + Removes the first occurrence of the specified object from this immutable list. + The object to remove. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes the first occurrence of the object that matches the specified value from this immutable list. + The value of the element to remove from the list. + The equality comparer to use in the search. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The new list with the elements removed. + + + Removes the element at the specified index. + The zero-based index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list. + The collection whose elements should be removed if matches are found in this list. + A new list with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes a range of elements, starting from the specified index and containing the specified number of elements, from this immutable list. + The starting index to begin removal. + The number of elements to remove. + A new list with the elements removed. + + + Replaces the specified element in the immutable list with a new element. + The element to replace. + The element to replace with. + + does not exist in the immutable list. + The new list with the replaced element, even if it is equal to the old element. + + + Replaces the specified element in the immutable list with a new element. + The element to replace in the list. + The element to replace with. + The comparer to use to check for equality. + A new list with the object replaced, or this list if the specified object is not in this list. + + + Reverses the order of the elements in the entire immutable list. + The reversed list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + The reversed list. + + + Replaces an element at a given position in the immutable list with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list with the replaced element, even if it is equal to the old element at that position. + + + Sorts the elements in the entire immutable list using the default comparer. + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The delegate to use when comparing elements. + + is . + The sorted list. + + + Sorts a range of elements in the immutable list using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Adds the specified item to the immutable list. + The item to add. + Always thrown. + + + Removes all items from the immutable list. + + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove. + Always thrown. + + if was successfully removed from the list; otherwise, . This method also returns if is not found in the original list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Inserts an object in the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert. + + + + Removes the value at the specified index. + The zero-based index of the item to remove. + + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from immutable list. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Adds an item to the immutable list. + The object to add to the list. + Always thrown. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the list. + + + Removes all items from the immutable list. + Always thrown. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + + if the object is found in the list; otherwise, . + + + Determines the index of a specific item in the immutable list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item into the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + Always thrown. + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + Always thrown. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove. + Always thrown. + + + Adds the specified value to this immutable list. + The value to add. + A new list with the element added. + + + Adds the specified values to this immutable list. + The values to add. + A new list with the elements added. + + + Retrieves an empty list that has the same sorting and ordering semantics as this instance. + An empty list that has the same sorting and ordering semantics as this instance. + + + Inserts the specified element at the specified index in the immutable list. + The index at which to insert the value. + The element to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The index at which to insert the elements. + The elements to insert. + A new immutable list that includes the specified elements. + + + Removes the element with the specified value from the list. + The value of the element to remove from the list. + The comparer to use to compare elements for equality. + A new with the specified element removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list that match the items specified. + The range of items to remove from the list, if found. + The equality comparer to use to compare elements. + + or is . + An immutable list with the items removed. + + + Removes the specified number of elements at the specified location from this list. + The starting index of the range of elements to remove. + The number of elements to remove. + A new list with the elements removed. + + + Replaces an element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + + does not exist in the list. + The new list. + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list. + + + Creates a list that has the same contents as this list and can be efficiently mutated across multiple operations using standard mutable interfaces. + The created list with the same contents as this list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements contained in the list. + The number of elements in the list. + + + Gets a value that indicates whether this list is empty. + + if the list is empty; otherwise, . + + + Gets the element at the specified index of the list. + The index of the element to retrieve. + In a get operation, is negative or not less than . + The element at the specified index. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the value at the specified index. + The zero-based index of the item to access. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + Value stored in the specified index. + + + This type is immutable, so it is always thread-safe. See the interface. + Boolean value determining whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value indicating whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + The value at the specified index. + + + Represents a list that mutates with little or no memory allocations and that can produce or build on immutable list instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an item to the immutable list. + The item to add to the list. + + + Adds a series of elements to the end of this list. + The elements to add to the end of the list. + + + Searches the entire for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the entire for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the specified range of the for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is less than 0. +-or- + + is less than 0. + + and do not denote a valid range in the . + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Removes all items from the immutable list. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + if item is found in the list; otherwise, . + + + Creates a new immutable list from the list represented by this builder by using the converter function. + The converter function. + The type of the output of the delegate converter function. + A new immutable list from the list represented by this builder. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list containing all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Performs the specified action on each element of the list. + The delegate to perform on each element of the list. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the range of elements in the immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Inserts an item to the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the immutable list. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the immutable list. The collection itself cannot be , but it can contain elements that are null, if type T is a reference type. + + + Gets a read-only reference to the value for a given into the list. + The index of the desired element. + A read-only reference to the value at the specified . + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the last occurrence of within the entire immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that extends from the first element to , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that contains number of elements and ends at , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + + if item was successfully removed from the list; otherwise, . This method also returns if item is not found in the list. + + + Removes the first occurrence matching the specified value from this list. + The item to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The number of elements removed from the immutable list. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove from the list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified range of values from this list. + The starting index to begin removal. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The old value does not exist in the list. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + The old value does not exist in the list. + + + Reverses the order of the elements in the entire immutable list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + + + Sorts the elements in the entire immutable list by using the default comparer. + + + Sorts the elements in the entire immutable list by using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + + + Sorts the elements in the entire immutable list by using the specified comparison object. + The object to use when comparing elements. + + is . + + + Sorts the elements in a range of elements in the immutable list by using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the list to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an item to the list. + The object to add to the list. + + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the list. + + + + Determines whether the list contains a specific value. + The object to locate in the list. + + + if the is found in the list; otherwise, . + + + Determines the index of a specific item in the list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item to the list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + + + + Removes the first occurrence of a specific object from the list. + The object to remove from the list. + + + + Creates an immutable list based on the contents of this instance. + An immutable list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements in this immutable list. + The number of elements in this list. + + + Gets or sets the value for a given index in the list. + The index of the item to get or set. + The value at the specified index. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + The object at the specified index. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances enumeration to the next element of the immutable list. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the list. + + + Sets the enumerator to its initial position, which is before the first element in the immutable list. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable queue. + The type of items to be stored in the immutable queue. + An empty immutable queue. + + + Creates a new immutable queue that contains the specified item. + The item to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified item. + + + Creates a new immutable queue that contains the specified array of items. + An array that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified array of items. + A span that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified items. + The items to add to the queue before immutability is applied. + The type of elements in the queue. + An immutable queue that contains the specified items. + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + The queue to remove the item from. + When this method returns, contains the item from the beginning of the queue. + The type of elements in the immutable queue. + The stack is empty. + The new queue with the item removed. + + + Represents an immutable queue. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Removes all objects from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + When this method returns, contains the element from the beginning of the queue. + The queue is empty. + The new immutable queue with the beginning element removed. + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Returns an enumerator that iterates through the immutable queue. + An enumerator that can be used to iterate through the queue. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a read-only reference to the element at the front of the queue. + The queue is empty. + Read-only reference to the element at the front of the queue. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Gets an empty immutable queue. + An empty immutable queue. + + + Gets a value that indicates whether this immutable queue is empty. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if this queue is empty; otherwise, . + + + Enumerates the contents of an immutable queue without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable queue. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the queue. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates a new immutable sorted dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key comparer. + The comparer implementation to use to evaluate keys for equality and sorting. + The items to add to the sorted dictionary. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + The new immutable sorted dictionary that contains the specified items and uses the specified key comparer. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key and value comparers. + The comparer implementation to use to compare keys for equality and sorting. + The comparer implementation to use to compare values for equality. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items and uses the specified comparers. + + + Creates an immutable sorted dictionary that contains the specified items and uses the default comparer. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable sorted dictionary from the current contents of the builder's dictionary. + The builder to create the immutable sorted dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Represents an immutable sorted dictionary. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the key contained in the dictionary. + The type of the value contained in the dictionary. + + + Gets an empty immutable sorted dictionary. + + + Adds an element with the specified key and value to the immutable sorted dictionary. + The key of the entry to add. + The value of entry to add. + The given key already exists in the dictionary but has a different value. + A new immutable sorted dictionary that contains the additional key/value pair. + + + Adds the specific key/value pairs to the immutable sorted dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable sorted dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable sorted dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether this immutable sorted map contains the specified key. + The key to locate. + + if the immutable dictionary contains the specified key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified value from the immutable sorted dictionary. + The value of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified value cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable sorted dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable sorted dictionary, possibly overwriting an existing value for the given key. + The key of the entry to add. + The key value to set. + A new immutable sorted dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable sorted dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + An immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the generic dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + The instance. + + + See the interface. + Sequence of key/value pairs to be added. + The instance. + + + See the interface. + The instance. + + + See the interface. + Key of entry to be removed. + The instance. + + + See the interface. + Sequence of keys to be removed. + The instance. + + + See the interface. + Key of entry to be updated. + Value of entry to be updated. + The instance. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + A set of key-value pairs to set on the map. + The instance. + + + Creates an immutable sorted dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. + + if the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets an instance of the immutable sorted dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable sorted dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable sorted dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable sorted dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The key to retrieve the value for. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable sorted dictionary. + The key comparer for the dictionary. + + + Gets the keys in the immutable sorted dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The object to use as the key of the element to access. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to be accessed. + Value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable sorted dictionary. + The values in the dictionary. + + + Represents a sorted dictionary that mutates with little or no memory allocations and that can produce or build on immutable sorted dictionary instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable sorted dictionary. + The key of the element to add. + The value of the element to add. + + + Adds the specified item to the immutable sorted dictionary. + The object to add to the dictionary. + + + Adds a sequence of values to the immutable sorted dictionary. + The items to add to the dictionary. + + + Removes all items from the immutable sorted dictionary. + + + Determines whether the immutable sorted dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate in the dictionary. The value can be for reference types. + + if the immutable sorted dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable sorted dictionary. + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original dictionary. + + + Removes the first occurrence of a specific object from the immutable sorted dictionary. + The object to remove from the dictionary. + + if was successfully removed from the dictionary; otherwise, . This method also returns if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable sorted dictionary. + The keys for entries to remove from the dictionary. + + + See . + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + See . + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable sorted dictionary based on the contents of this instance. + An immutable sorted dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets the number of elements in this immutable sorted dictionary. + The number of elements in this dictionary. + + + Gets or sets the value for a specified key in the immutable sorted dictionary. + The key to retrieve the value for. + The value associated with the given key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a strongly typed, read-only collection of elements. + A strongly typed, read-only collection of elements. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Returns a collection containing all keys stored in the dictionary. See . + A collection containing all keys stored in the dictionary. + + + Returns a collection containing all values stored in the dictionary. See . + A collection containing all values stored in the dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value associated with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable sorted dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable sorted dictionary. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted dictionary. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted set. + The type of items to be stored in the immutable set. + An empty immutable sorted set. + + + Creates a new immutable sorted set that contains the specified item. + The item to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates an empty immutable sorted set that uses the specified comparer. + The implementation to use when comparing items in the set. + The type of items in the immutable set. + An empty immutable set. + + + Creates a new immutable sorted set that contains the specified item and uses the specified comparer. + The implementation to use when comparing items in the set. + The item to prepopulate the set with. + The type of items stored in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items and uses the specified comparer. + The implementation to use when comparing items in the set. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable sorted set that contains the specified array of items. + A span that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Returns a collection that can be used to build an immutable sorted set. + The type of items stored by the collection. + The immutable collection builder. + + + Returns a collection that can be used to build an immutable sorted set. + The comparer used to compare items in the set for equality. + The type of items stored by the collection. + The immutable collection. + + + Creates a new immutable collection that contains the specified items. + The comparer to use to compare elements in this set. + The items to add to the set before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Creates a new immutable collection that contains the specified items. + The items to add to the set with before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Enumerates a sequence and produces an immutable sorted set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable sorted set of its contents, and uses the specified comparer. + The sequence to enumerate. + The comparer to use for initializing and adding members to the sorted set. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Creates an immutable sorted set from the current contents of the builder's set. + The builder to create the immutable sorted set from. + The type of the elements in the immutable sorted set. + An immutable sorted set that contains the current contents in the builder's set. + + + Represents an immutable sorted set implementation. + +NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the set. + + + Gets an empty immutable sorted set. + + + Adds the specified value to this immutable sorted set. + The value to add. + A new set with the element added, or this set if the element is already in this set. + + + Removes all elements from the immutable sorted set. + An empty set with the elements removed. + + + Determines whether this immutable sorted set contains the specified value. + The value to check for. + + if the set contains the specified value; otherwise, . + + + Removes a specified set of items from this immutable sorted set. + The items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the immutable sorted set. + An enumerator that can be used to iterate through the set. + + + Gets the position within this immutable sorted set that the specified value appears in. + The value whose position is being sought. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, this method returns a negative number that is the bitwise complement of the index of the first element that is larger than value. If is not found and is greater than any of the elements in the set, this method returns a negative number that is the bitwise complement of the index of the last element plus 1. + + + Creates an immutable sorted set that contains elements that exist both in this set and in the specified set. + The set to intersect with this one. + A new immutable sorted set that contains any elements that exist in both sets. + + + Determines whether the current immutable sorted set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a proper superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current immutable sorted set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference of the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference of the element at the given position. + + + Determines whether the current immutable sorted set and a specified collection share common elements. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the specified value from this immutable sorted set. + The element to remove. + A new immutable sorted set with the element removed, or this set if the element was not found in the set. + + + Returns an that iterates over this immutable sorted set in reverse order. + An enumerator that iterates over the immutable sorted set in reverse order. + + + Determines whether the current immutable sorted set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable sorted set that contains elements that exist either in this set or in a given sequence, but not both. + The other sequence of items. + The new immutable sorted set. + + + Adds the specified value to the collection. + The value to add. + + + Removes all the items from the collection. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the collection. + The object to remove from the collection. + + if was successfully removed from the collection; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Inserts an item in the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + + + Removes the item at the specified index. + The zero-based index of the item to remove. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Adds an item to the set. + The object to add to the set. + The set is read-only or has a fixed size. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the set. + Thrown in all cases. + + + Determines whether the set contains a specific value. + The object to locate in the set. + + if the object is found in the set; otherwise, . + + + Determines the index of a specific item in the set. + The object to locate in the set. + The index of if found in the list; otherwise, -1. + + + Inserts an item into the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + The set is read-only or has a fixed size. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + The set is read-only or has a fixed size. + + + Removes the item at the specified index of the set. + The zero-based index of the item to remove. + The set is read-only or has a fixed size. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Removes the elements in the specified collection from the current immutable set. + The items to remove from this set. + The new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates a collection that has the same contents as this immutable sorted set that can be efficiently manipulated by using standard mutable interfaces. + The sorted set builder. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Adds a given set of items to this immutable sorted set. + The items to add. + The new set with the items added; or the original set if all the items were already in the set. + + + Returns the immutable sorted set that has the specified key comparer. + The comparer to check for. + The immutable sorted set that has the specified key comparer. + + + Gets the number of elements in the immutable sorted set. + The number of elements in the immutable sorted set. + + + Gets a value that indicates whether this immutable sorted set is empty. + + if this set is empty; otherwise, . + + + Gets the element of the immutable sorted set at the given index. + The index of the element to retrieve from the sorted set. + The element at the given index. + + + Gets the comparer used to sort keys in the immutable sorted set. + The comparer used to sort keys. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Returns true, since immutable collections are always read-only. See the interface. + A boolean value indicating whether the collection is read-only. + + + See the interface. + The zero-based index of the item to access. + The element stored at the specified index. + + + Returns true, since immutable collections are always thread-safe. See the interface. + A boolean value indicating whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + + The . + + + Represents a sorted set that enables changes with little or no memory allocations, and efficiently manipulates or builds immutable sorted sets. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements from this set. + + + Determines whether the set contains the specified object. + The object to locate in the set. + + if is found in the set; otherwise, . + + + Removes the specified set of items from the current set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the set. + A enumerator that can be used to iterate through the set. + + + Searches for the first index within this set that the specified value is contained. + The value to locate within the set. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, returns a negative number that is the bitwise complement of the index of the first element that's larger than . If is not found and is greater than any of the elements in the set, returns a negative number that is the bitwise complement of (the index of the last element plus 1). + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection is compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference to the element at the given position. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of the specified object from the set. + The object to remove from the set. + + if was removed from the set; if was not found in the set. + + + Returns an enumerator that iterates over the immutable sorted set in reverse order. + An enumerator that iterates over the set in reverse order. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Creates an immutable sorted set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current state. + + + Gets the number of elements in the immutable sorted set. + The number of elements in this set. + + + Gets the element of the set at the given index. + The 0-based index of the element in the set to return. + The element at the given position. + + + Gets or sets the object that is used to determine equality for the values in the immutable sorted set. + The comparer that is used to determine equality for the values in the set. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread-safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Advances the enumerator to the next element of the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted set. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Gets the element at the current position of the enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable stack. + The type of items to be stored in the immutable stack. + An empty immutable stack. + + + Creates a new immutable stack that contains the specified item. + The item to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable collection that contains the specified item. + + + Creates a new immutable stack that contains the specified array of items. + An array that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified array of items. + A span that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified items. + The items to add to the stack before it's immutable. + The type of items in the stack. + An immutable stack that contains the specified items. + + + Removes the specified item from an immutable stack. + The stack to modify. + The item to remove from the stack. + The type of items contained in the stack. + The stack is empty. + A stack; never . + + + Represents an immutable stack. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element on the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns an enumerator that iterates through the immutable stack. + An enumerator that can be used to iterate through the stack. + + + Returns the object at the top of the stack without removing it. + The stack is empty. + The object at the top of the stack. + + + Gets a read-only reference to the element on the top of the stack. + The stack is empty. + A read-only reference to the element on the top of the stack. + + + Removes the element at the top of the immutable stack and returns the stack after the removal. + The stack is empty. + A stack; never . + + + Removes the specified element from the immutable stack and returns the stack after the removal. + The value to remove from the stack. + A stack; never . + + + Inserts an object at the top of the immutable stack and returns the new stack. + The object to push onto the stack. + The new stack. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable stack. + The empty immutable stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets an empty immutable stack. + An empty immutable stack. + + + Gets a value that indicates whether this instance of the immutable stack is empty. + + if this instance is empty; otherwise, . + + + Enumerates the contents of an immutable stack without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable stack. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the stack. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + LINQ extension method overrides that offer greater efficiency for than the standard LINQ methods + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + A function to be invoked on each element, in a cumulative way. + The type of element contained by the collection. + The final value after the cumulative function has been applied to all elements. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + The type of the accumulated value. + The type of element contained by the collection. + The final accumulator value. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + A function to transform the final accumulator value into the result type. + The type of the accumulated value. + The type of result returned by the result selector. + The type of element contained by the collection. + The final accumulator value. + + + Gets a value indicating whether all elements in this array match a given condition. + The array to check for matches. + The predicate. + The type of element contained by the collection. + + if every element of the source sequence passes the test in the specified predicate; otherwise, . + + + Returns a value indicating whether this collection contains any elements. + The builder to check for matches. + The type of elements in the array. + + if the array builder contains any elements; otherwise, . + + + Gets a value indicating whether the array contains any elements. + The array to check for elements. + The type of element contained by the collection. + + if the array contains an elements; otherwise, . + + + Gets a value indicating whether the array contains any elements that match a specified condition. + The array to check for elements. + The delegate that defines the condition to match to an element. + The type of element contained by the collection. + + if an element matches the specified condition; otherwise, . + + + Returns the element at a specified index in the array. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index. + + + Returns the element at a specified index in a sequence or a default value if the index is out of range. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index, or the default value if the index is not found. + + + Returns the first element in the collection. + The builder to retrieve an item from. + The type of items in the array. + If the array is empty. + The first item in the list. + + + Returns the first element in an array. + The array to get an item from. + The type of element contained by the collection. + If the array is empty. + The first item in the array. + + + Returns the first element in a sequence that satisfies a specified condition. + The array to get an item from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + If the array is empty. + The first item in the list if it meets the condition specified by . + + + Returns the first element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of the sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve elements from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the last element in the collection. + The builder to retrieve elements from. + The type of item in the builder. + The collection is empty. + The last element in the builder. + + + Returns the last element of the array. + The array to retrieve items from. + The type of element contained by the array. + The collection is empty. + The last element in the array. + + + Returns the last element of a sequence that satisfies a specified condition. + The array to retrieve elements from. + The delegate that defines the conditions of the element to retrieve. + The type of element contained by the collection. + The collection is empty. + The last element of the array that satisfies the condition. + + + Returns the last element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve an element from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Projects each element of a sequence into a new form. + The immutable array to select items from. + A transform function to apply to each element. + The type of element contained by the collection. + The type of the result element. + An whose elements are the result of invoking the transform function on each element of source. + + + Projects each element of a sequence to an , flattens the resulting sequences into one sequence, and invokes a result selector function on each element therein. + The immutable array. + A transform function to apply to each element of the input sequence. + A transform function to apply to each element of the intermediate sequence. + The type of the elements of . + The type of the intermediate elements collected by . + The type of the elements of the resulting sequence. + An whose elements are the result of invoking the one-to-many transform function on each element of and then mapping each of those sequence elements and their corresponding source element to a result element. + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence. + The array to retrieve the element from. + The type of element contained by the collection. + The element in the sequence. + + + Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists. + The immutable array to return a single element from. + The function to test whether an element should be returned. + The type of element contained by the collection. + Returns . + + + Returns the only element of the array, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence. + The array. + The type of element contained by the collection. + + contains more than one element. + The element in the array, or the default value if the array is empty. + + + Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition. + The array to get the element from. + The condition the element must satisfy. + The type of element contained by the collection. + More than one element satisfies the condition in . + The element if it satisfies the specified condition; otherwise the default element. + + + Copies the contents of this array to a mutable array. + The immutable array to copy into a mutable one. + The type of element contained by the collection. + The newly instantiated array. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Filters a sequence of values based on a predicate. + The array to filter. + The condition to use for filtering the array content. + The type of element contained by the collection. + Returns that contains elements that meet the condition. + + + An unsafe class that provides a set of methods to access the underlying data representations of immutable collections. + + + Gets the underlying array for an input value. + The input value to get the underlying array from. + The type of elements in the input value. + The underlying array for , if present. + + + Gets an value wrapping the input array. + The input array to wrap in the returned value. + The type of elements in the input array. + An value wrapping . + + + \ No newline at end of file diff --git a/packages/System.Collections.Immutable.8.0.0/lib/netstandard2.0/System.Collections.Immutable.dll b/packages/System.Collections.Immutable.8.0.0/lib/netstandard2.0/System.Collections.Immutable.dll new file mode 100644 index 0000000..3082288 Binary files /dev/null and b/packages/System.Collections.Immutable.8.0.0/lib/netstandard2.0/System.Collections.Immutable.dll differ diff --git a/packages/System.Collections.Immutable.8.0.0/lib/netstandard2.0/System.Collections.Immutable.xml b/packages/System.Collections.Immutable.8.0.0/lib/netstandard2.0/System.Collections.Immutable.xml new file mode 100644 index 0000000..6c749c0 --- /dev/null +++ b/packages/System.Collections.Immutable.8.0.0/lib/netstandard2.0/System.Collections.Immutable.xml @@ -0,0 +1,6100 @@ + + + + System.Collections.Immutable + + + + Provides a set of initialization methods for instances of the class. + + + Creates a from an according to specified key selector function. + An from which to create a . + A function to extract a key from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + A that contains the keys and values selected from the input sequence. + + + Creates a with the specified key/value pairs. + The key/value pairs to use to populate the dictionary. + The comparer implementation to use to compare keys for equality. If , is used. + The type of the keys in the dictionary. + The type of the values in the dictionary. + A that contains the specified keys and values. + + + Creates a from an according to specified key selector and element selector functions. + An from which to create a . + A function to extract a key from each element. + A transform function to produce a result element value from each element. + An to compare keys. + The type of the elements of . + The type of the key returned by . + The type of the value returned by . + A that contains the keys and values selected from the input sequence. + + + Provides an immutable, read-only dictionary optimized for fast lookup and enumeration. + The type of the keys in the dictionary. + The type of the values in this dictionary. + + + Determines whether the dictionary contains the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the specified key; otherwise, . + + + Copies the elements of the dictionary to an array of type , starting at the specified . + The array that is the destination of the elements copied from the dictionary. + The zero-based index in at which copying begins. + + + Copies the elements of the dictionary to a span of type . + The span that is the destination of the elements copied from the dictionary. + + + Returns an enumerator that iterates through the dictionary. + An enumerator that iterates through the dictionary. + + + Gets either a reference to a in the dictionary or a reference if the key does not exist in the dictionary. + The key used for lookup. + A reference to a in the dictionary or a reference if the key does not exist in the dictionary. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the . + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Removes the element with the specified key from the . + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Adds an element with the provided key and value to the object. + The to use as the key of the element to add. + The to use as the value of the element to add. + + + Removes all elements from the object. + + + Determines whether the object contains an element with the specified key. + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + Returns an object for the object. + An object for the object. + + + Removes the element with the specified key from the object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The key of the value to get. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, the default value for the type of . + + if the dictionary contains an element with the specified key; otherwise, . + + + Gets the comparer used by this dictionary. + + + Gets the number of key/value pairs contained in the dictionary. + + + Gets an empty . + + + Gets a reference to the value associated with the specified key. + The key of the value to get. + + does not exist in the collection. + A reference to the value associated with the specified key. + + + Gets a collection containing the keys in the dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the element that has the specified key in the read-only dictionary. + The key to locate. + The element that has the specified key in the read-only dictionary. + + + Gets an enumerable collection that contains the keys in the read-only dictionary. + An enumerable collection that contains the keys in the read-only dictionary. + + + Gets an enumerable collection that contains the values in the read-only dictionary. + An enumerable collection that contains the values in the read-only dictionary. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + Gets a value indicating whether the object is read-only. + + true if the object is read-only; otherwise, false. + + + Gets or sets the element with the specified key. + The key of the element to get or set. + The element with the specified key, or null if the key does not exist. + + + Gets an object containing the keys of the object. + An object containing the keys of the object. + + + Gets an object containing the values in the object. + An object containing the values in the object. + + + Gets a collection containing the values in the dictionary. + + + Enumerates the elements of a . + + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + + Creates a with the specified values. + The values to use to populate the set. + The comparer implementation to use to compare values for equality. If , is used. + The type of the values in the set. + A frozen set. + + + Provides an immutable, read-only set optimized for fast lookup and enumeration. + The type of the values in this set. + + + Determines whether the set contains the specified element. + The element to locate. + + if the set contains the specified element; otherwise, . + + + Copies the values in the set to an array, starting at the specified . + The array that is the destination of the values copied from the set. + The zero-based index in at which copying begins. + + + Copies the values in the set to a span. + The span that is the destination of the values copied from the set. + + + Returns an enumerator that iterates through the set. + An enumerator that iterates through the set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper subset of other; otherwise, false. + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a proper superset of other; otherwise, false. + + + Determines whether a set is a subset of a specified collection. + The collection to compare to the current set. + + true if the current set is a subset of other; otherwise, false. + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + true if the current set is a superset of other; otherwise, false. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + true if the current set and other share at least one common element; otherwise, false. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + true if the current set is equal to other; otherwise, false. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in the current set, in the specified collection, or in both. + The collection to compare to the current set. + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the default value of T when the search yielded no match. + A value indicating whether the search was successful. + + + Gets the comparer used by this set. + + + Gets the number of values contained in the set. + + + Gets an empty . + + + Gets a collection containing the values in the set. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the values of a . + + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an immutable collection of key/value pairs. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of keys in the dictionary. + The type of values in the dictionary. + + + Adds an element with the specified key and value to the dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether the immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Represents a list of elements that cannot be modified. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Makes a copy of the list, and adds the specified object to the end of the copied list. + The object to add to the list. + A new list with the object added. + + + Makes a copy of the list and adds the specified objects to the end of the copied list. + The objects to add to the list. + A new list with the elements added. + + + Creates a list with all the items removed, but with the same sorting and ordering semantics as this list. + An empty list that has the same sorting and ordering semantics as this instance. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the . This value can be null for reference types. + The zero-based starting indexes of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use to locate . + The zero-based index of the first occurrence of within the range of elements in the that starts at and contains number of elements if found; otherwise -1. + + + Inserts the specified element at the specified index in the immutable list. + The zero-based index at which to insert the value. + The object to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The zero-based index at which the new elements should be inserted. + The elements to insert. + A new immutable list that includes the specified elements. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to match . + Returns . + + + Removes the first occurrence of a specified object from this immutable list. + The object to remove from the list. + The equality comparer to use to locate . + A new list with the specified object removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes the specified object from the list. + The objects to remove from the list. + The equality comparer to use to determine if match any objects in the list. + A new immutable list with the specified objects removed, if matched objects in the list. + + + Removes a range of elements from the . + The zero-based starting index of the range of elements to remove. + The number of elements to remove. + A new immutable list with the elements removed. + + + Returns a new list with the first matching element in the list replaced with the specified element. + The element to be replaced. + The element to replace the first occurrence of with. + The equality comparer to use for matching . + + does not exist in the list. + A new list that contains , even if is the same as . + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + A new list that contains the new element, even if the element at the specified location is the same as the new element. + + + Represents an immutable first-in, first-out collection of objects. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Returns a new queue with all the elements removed. + An empty immutable queue. + + + Removes the first element in the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue with the first element removed. This value is never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue with the specified element added. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a value that indicates whether this immutable queue is empty. + + if this queue is empty; otherwise, . + + + Represents a set of elements that can only be modified by creating a new instance of the set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored in the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable set contains a specified element. + The element to locate in the set. + + if the set contains the specified value; otherwise, . + + + Removes the elements in the specified collection from the current immutable set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains only elements that exist in this set and the specified set. + The collection to compare to the current . + A new immutable set that contains elements that exist in both sets. + + + Determines whether the current immutable set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a proper (strict) superset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Determines whether the set contains a specified value. + The value to search for. + The matching value from the set, if found, or equalvalue if there are no matches. + + if a matching value was found; otherwise, . + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Represents an immutable last-in-first-out (LIFO) collection. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns the element at the top of the immutable stack without removing it. + The stack is empty. + The element at the top of the stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets a value that indicates whether this immutable stack is empty. + + if this stack is empty; otherwise,. + + + Provides methods for creating an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Searches the sorted immutable array for a specified element using the default comparer and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The object to search for. + The comparer implementation to use when comparing elements, or null to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element, if it's found. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The type of element stored in the array. + + does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Searches a sorted immutable array for a specified element and returns the zero-based index of the element. + The sorted array to search. + The starting index of the range to search. + The length of the range to search. + The object to search for. + The comparer to use when comparing elements for equality or to use the default comparer. + The type of element stored in the array. + + is null and does not implement or the search encounters an element that does not implement . + + and do not specify a valid range in . + +-or- + + is , and is of a type that is not compatible with the elements of . + + is less than the lower bound of . + +-or- + + is less than zero. + The zero-based index of the item in the array, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than or, if there is no larger element, the bitwise complement of . + + + Creates an empty immutable array. + The type of elements stored in the array. + An empty immutable array. + + + Creates an immutable array that contains the specified object. + The object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified object. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array that contains the specified objects. + The first object to store in the array. + The second object to store in the array. + The third object to store in the array. + The fourth object to store in the array. + The type of elements stored in the array. + An immutable array that contains the specified objects. + + + Creates an immutable array from the specified array of objects. + The array of objects to populate the array with. + The type of elements stored in the array. + An immutable array that contains the array of items. + + + Creates an immutable array with specified objects from another array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an immutable array with the specified objects from another immutable array. + The source array of objects. + The index of the first element to copy from . + The number of elements from to include in this immutable array. + The type of elements stored in the array. + An immutable array that contains the specified objects from the source array. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates an with the specified elements. + The elements to store in the array. + The type of element stored in the array. + An immutable array containing the specified items. + + + Creates a mutable array that can be converted to an without allocating new memory. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a mutable array that can be converted to an without allocating new memory. + The initial capacity of the builder. + The type of elements stored in the builder. + A mutable array of the specified type that can be efficiently converted to an immutable array. + + + Creates a new populated with the specified items. + The elements to add to the array. + The type of element stored in the array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + The type of element stored in the source array. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The function to apply to each element from the source array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to pass to the selector mapping function. + The type of element to store in the target array. + An immutable array that contains the specified items. + + + Initializes a new instance of the struct. + The source array to initialize the resulting array with. + The index of the first element in the source array to include in the resulting array. + The number of elements from the source array to include in the resulting array. + The function to apply to each element from the source array included in the resulting array. + An argument to be passed to the selector mapping function. + The type of element stored in the source array. + The type of argument to be passed to the selector mapping function. + The type of element to be stored in the target array. + An immutable array that contains the specified items. + + + Creates an immutable array from the specified collection. + The collection of objects to copy to the immutable array. + The type of elements contained in . + An immutable array that contains the specified collection of objects. + + + Creates an immutable array from the current contents of the builder's array. + The builder to create the immutable array from. + The type of elements contained in the immutable array. + An immutable array that contains the current contents of the builder's array. + + + Produce an immutable array of contents from specified elements. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Converts the span to an immutable array. + The elements to store in the array. + The type of element in the list. + An immutable array containing the items in the span. + + + Represents an array that is immutable; meaning it cannot be changed once it is created. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element stored by the array. + + + Gets an empty immutable array. + + + Returns a copy of the original array with the specified item added to the end. + The item to be added to the end of the array. + A new array with the specified item added to the end. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the array. + A new array with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The number of elements from the source array to add. + A new list with the elements added. + + + Adds the specified values to this list. + The values to add. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Adds the specified items to the end of the array. + The values to add. + The type that derives from the type of item already in the array. + A new list with the elements added. + + + Returns a new immutable array that contains the elements of this array cast to a different type. + The type of array element to return. + An immutable array that contains the elements of this array, cast to a different type. If the cast fails, returns an array whose property returns . + + + Creates a new read-only memory region over this immutable array. + The read-only memory representation of this immutable array. + + + Creates a new read-only span over this immutable array. + The read-only span representation of this immutable array. + + + Creates a over the portion of the current , beginning at a specified position for a specified length. + The index at which to begin the span. + The number of items in the span. + The representation of the . + + + Creates a span over the portion of the current based on the specified . + A range in the current . + A span representation of the . + + + Initializes a new instance of the struct by casting the underlying array to an array of type . + The type of array element to return. + The cast is illegal. + An immutable array instance with elements cast to the new type. + + + Initializes a new instance of the struct based on the contents of an existing instance, allowing a covariant static cast to efficiently reuse the existing array. + The array to initialize the array with. No copy is made. + The type of array element to return. + An immutable array instance with elements cast to the new type. + + + Returns an array with all the elements removed. + An array with all of the elements removed. + + + Determines whether the specified item exists in the array. + The item to search for. + + if the specified item was found in the array; otherwise . + + + Determines whether the specified item exists in the array. + The item to search for. + The equality comparer to use in the search. + If , is used. + + if an equal value was found in the array; otherwise. + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the contents of this array to the specified array starting at the specified destination index. + The array to copy to. + The index in where copying begins. + + + Copies the specified items in this array to the specified array at the specified starting index. + The index of this array where copying begins. + The array to copy to. + The index in where copying begins. + The number of elements to copy from this array. + + + Copies the elements of current to a . + The that is the destination of the elements copied from current . + + + Indicates whether specified array is equal to this array. + An object to compare with this object. + + if is equal to this array; otherwise, . + + + Determines if this array is equal to the specified object. + The to compare with this array. + + if this array is equal to ; otherwise, . + + + Returns an enumerator that iterates through the contents of the array. + An enumerator. + + + Returns a hash code for this instance. + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + Searches the array for the specified item. + The item to search for. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The zero-based index position of the item if it is found, or -1 if it is not. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the item inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new immutable array with the items inserted at the specified index. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + Gets a read-only reference to the element at the specified in the read-only list. + The zero-based index of the element to get a reference to. + A read-only reference to the element at the specified in the read-only list. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Searches the array for the specified item; starting at the end of the array. + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Filters the elements of this array to those assignable to the specified type. + The type to filter the elements of the sequence on. + An that contains elements from the input sequence of type of . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates if two arrays are equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are equal; otherwise, . + + + Returns a value that indicates whether two arrays are not equal. + The array to the left of the operator. + The array to the right of the operator. + + if the arrays are not equal; otherwise, . + + + Checks for inequality between two array. + The object to the left of the operator. + The object to the right of the operator. + + if the two arrays are not equal; otherwise, . + + + Returns an array with the first occurrence of the specified element removed from the array. If no match is found, the current array is returned. + The item to remove. + A new array with the item removed. + + + Returns an array with the first occurrence of the specified element removed from the array. + + If no match is found, the current array is returned. + The item to remove. + The equality comparer to use in the search. + A new array with the specified item removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the item at the specified index removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + A new array with the elements removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + A new list with the elements removed. + + + Removes the specified items from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The item to add to the list. + The new array that contains at the specified index. + + + Forms a slice out of the current starting at a specified index for a specified length. + The index at which to begin this slice. + The desired length for the slice. + An that consists of elements from the current , starting at . + + + Sorts the elements in the immutable array using the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the immutable array using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Sorts the elements in the entire using the specified . + The to use when comparing elements. + + is null. + The sorted list. + + + Sorts the specified elements in the immutable array using the specified comparer. + The index of the first element to sort. + The number of elements to include in the sort. + The implementation to use when comparing elements, or to use the default comparer. + A new immutable array that contains the items in this array, in sorted order. + + + Throws in all cases. + The item to add to the end of the array. + + + Throws in all cases. + + + Throws in all cases. + The object to remove from the array. + Throws in all cases. + + + Returns an enumerator that iterates through the array. + The property returns . + An enumerator that can be used to iterate through the array. + + + Throws in all cases. + The index of the location to insert the item. + The item to insert. + + + Throws in all cases. + The index. + + + Copies this array to another array starting at the specified index. + The array to copy this array to. + The index in the destination array to start the copy operation. + + + Returns an enumerator that iterates through the immutable array. + The property returns . + An enumerator that iterates through the immutable array. + + + Throws in all cases. + The value to add to the array. + Thrown in all cases. + Throws in all cases. + + + Throws in all cases. + Thrown in all cases. + + + Throws in all cases. + The value to check for. + Throws in all cases. + + + Gets the value at the specified index. + The value to return the index of. + The value of the element at the specified index. + + + Throws in all cases. + Index that indicates where to insert the item. + The value to insert. + Thrown in all cases. + + + Throws in all cases. + The value to remove from the array. + Thrown in all cases. + + + Throws in all cases. + The index of the item to remove. + Thrown in all cases. + + + Returns a copy of the original array with the specified item added to the end. + The value to add to the end of the array. + A new array with the specified item added to the end. + + + Returns a copy of the original array with the specified elements added to the end of the array. + The elements to add to the end of the array. + A new array with the elements added to the end. + + + Returns an array with all the elements removed. + An array with all the elements removed. + + + Returns a new array with the specified value inserted at the specified position. + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array with the specified value inserted. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + A new array with the specified values inserted. + + + Returns an array with the first occurrence of the specified element removed from the array; if no match is found, the current array is returned. + The value to remove from the array. + The equality comparer to use in the search. + A new array with the value removed. + + + Removes all the items from the array that meet the specified condition. + The delegate that defines the conditions of the elements to remove. + A new array with items that meet the specified condition removed. + + + Returns an array with the element at the specified position removed. + The 0-based index of the element to remove from the returned array. + A new array with the specified item removed. + + + Removes the specified items from this array. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new array with the elements removed. + + + Returns an array with the elements at the specified position removed. + The 0-based index of the starting element to remove from the array. + The number of elements to remove from the array. + The new array with the specified elements removed. + + + Finds the first element in the array equal to the specified value and replaces the value with the specified new value. + The value to find and replace in the array. + The value to replace the oldvalue with. + The equality comparer to use to compare values. + + is not found in the array. + A new array that contains even if the new and old values are the same. + + + Replaces the item at the specified index with the specified item. + The index of the item to replace. + The value to add to the list. + The new array that contains at the specified index. + + + Determines whether the current collection element precedes, occurs in the same position as, or follows another element in the sort order. + The element to compare with the current instance. + The object used to compare members of the current array with the corresponding members of other array. + The arrays are not the same length. + An integer that indicates whether the current element precedes, is in the same position or follows the other element. + + + Determines whether this array is structurally equal to the specified array. + The array to compare with the current instance. + An object that determines whether the current instance and other are structurally equal. + + if the two arrays are structurally equal; otherwise, . + + + Returns a hash code for the current instance. + An object that computes the hash code of the current object. + The hash code for the current instance. + + + Creates a mutable array that has the same contents as this array and can be efficiently mutated across multiple operations using standard mutable interfaces. + The new builder with the same contents as this array. + + + Gets a value indicating whether this array was declared but not initialized. + + if the is ; otherwise, . + + + Gets a value indicating whether this is empty or is not initialized. + + if the is or ; otherwise, . + + + Gets a value indicating whether this is empty. + + if the is empty; otherwise, . + + + Gets the element at the specified index in the immutable array. + The zero-based index of the element to get. + The element at the specified index in the immutable array. + + + Gets the number of elements in the array. + The number of elements in the array. + + + Gets the number of items in the collection. + The property returns . + Number of items in the collection. + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the element at the specified index in the read-only list. + The zero-based index of the element to get. + Always thrown from the setter. + The property returns . + The element at the specified index in the read-only list. + + + Gets the number of items in the collection. + The property returns . + The number of items in the collection. + + + Gets the element at the specified index. + The index. + The property returns . + The element. + + + Gets the size of the array. + The property returns . + The number of items in the collection. + + + See the interface. Always returns since since immutable collections are thread-safe. + Boolean value determining whether the collection is thread-safe. + + + Gets the sync root. + An object for synchronizing access to the collection. + + + Gets a value indicating whether this instance is fixed size. + + if this instance is fixed size; otherwise, . + + + Gets a value indicating whether this instance is read only. + + if this instance is read only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Always thrown from the setter. + The property returns . + The object at the specified index. + + + A writable array accessor that can be converted into an instance without allocating extra memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the array. + The object to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + + + Adds the specified items to the end of the array. + The items to add to the array. + The number of elements from the source array to add. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items that derive from the type currently in the array, to the end of the array. + The items to add to the end of the array. + The type that derives from the type of item already in the array. + + + Adds the specified items to the end of the array. + The items to add at the end of the array. + The type that derives from the type of item already in the array. + + + Removes all items from the array. + + + Determines whether the array contains a specific value. + The object to locate in the array. + + if the object is found; otherwise, . + + + Copies the contents of this array to the specified array. + The array to copy to. + + + Copies the current contents to the specified array. + The array to copy to. + The index to start the copy operation. + + + Copies the contents of this array to the specified array. + The index into this collection of the first element to copy. + The array to copy to. + The index into the destination array to which the first copied element is written. + The number of elements to copy. + + + Copies the current contents to the specified . + The to copy to. + + + Returns the current contents as an and sets the collection to a zero length array. + An immutable array. + + + Gets an object that can be used to iterate through the collection. + An object that can be used to iterate through the collection. + + + Determines the index of a specific item in the array. + The item to locate in the array. + The index of if it's found in the list; otherwise, -1. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The index of if it's found in the list; otherwise, -1. + + + Searches the array for the specified item. + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + If , is used. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the index of the specified item. + The item to locate in the array. + The starting position of the search. + The number of elements to search. + The index of if it's found in the list; otherwise, -1. + + + Determines the index for the specified item. + The item to locate in the array. + The index at which to begin the search. + The starting position of the search. + The equality comparer to use in the search. + The index of if it's found in the list; otherwise, -1. + + + Inserts an item in the array at the specified index. + The zero-based index at which to insert the item. + The object to insert into the array. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Inserts the specified values at the specified index. + The index at which to insert the value. + The elements to insert. + + + Gets a read-only reference to the element at the specified index. + The item index. + + is greater or equal to the array count. + The read-only reference to the element at the specified index. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The 0-based index where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Determines the 0-based index of the last occurrence of the specified item in this array. + The item to search for. + The starting position of the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + Extracts the internal array as an and replaces it with a zero length array. + When doesn't equal . + An immutable array containing the elements of the builder. + + + Removes the specified element. + The item to remove. + + if was found and removed; otherwise, . + + + Removes the first occurrence of the specified element from the builder. + If no match is found, the builder remains unchanged. + The element to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + + + Removes the item at the specified index from the array. + The zero-based index of the item to remove. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified values from this list. + The 0-based index into the array for the element to omit from the returned array. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + + + Reverses the order of elements in the collection. + + + Sorts the contents of the array. + + + Sorts the contents of the array. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Sorts the elements in the entire array using the specified . + The to use when comparing elements. + + is null. + + + Sorts the contents of the array. + The starting index for the sort. + The number of elements to include in the sort. + The comparer to use for sorting. If comparer is , the default comparer for the elements type in the array is used. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Returns an enumerator that iterates through the array. + An enumerator that iterates through the array. + + + Creates a new array with the current contents of this . + A new array with the contents of this . + + + Returns an immutable array that contains the current contents of this . + An immutable array that contains the current contents of this . + + + Gets or sets the length of the internal array. When set, the internal array is reallocated to the given capacity if it is not already the specified length. + The length of the internal array. + + + Gets or sets the number of items in the array. + The number of items in the array. + + + Gets or sets the item at the specified index. + The index of the item to get or set. + The specified index is not in the array. + The item at the specified index. + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + An array enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances to the next value in the array. + + if another item exists in the array; otherwise, . + + + Gets the current item. + The current item. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Determines whether the specified immutable dictionary contains the specified key/value pair. + The immutable dictionary to search. + The key to locate in the immutable dictionary. + The value to locate on the specified key, if the key is found. + The type of the keys in the immutable dictionary. + The type of the values in the immutable dictionary. + + if this map contains the specified key/value pair; otherwise, . + + + Creates an empty immutable dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates an empty immutable dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable dictionary. + + + Creates a new immutable dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The new builder. + + + Creates a new immutable dictionary that contains the specified items. + The items used to populate the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Creates a new immutable dictionary that contains the specified items and uses the specified key comparer. + The comparer implementation to use to compare keys for equality. + The comparer implementation to use to compare values for equality. + The items to add to the dictionary before it's immutable. + The type of keys in the dictionary. + The type of values in the dictionary. + A new immutable dictionary that contains the specified items and uses the specified comparer. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The type of the key. + The type of the value. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The dictionary to retrieve the value from. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The type of the key. + The type of the value. + The value for the key, or if no matching key was found. + + + Constructs an immutable dictionary from an existing collection of elements, applying a transformation function to the source keys. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Constructs an immutable dictionary based on some transformation of a sequence. + The source collection used to generate the immutable dictionary. + The function used to transform keys for the immutable dictionary. + The key comparer to use for the dictionary. + The type of element in the source collection. + The type of key in the resulting immutable dictionary. + The immutable dictionary that contains elements from , with keys transformed by applying . + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable dictionary from the current contents of the builder's dictionary. + The builder to create the immutable dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Represents an immutable, unordered collection of keys and values. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the keys in the dictionary. + The type of the values in the dictionary. + + + Gets an empty immutable dictionary. + + + Adds an element with the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + The given key already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pair. + + + Adds the specified key/value pairs to the immutable dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified key. + The key to locate. + + if the immutable dictionary contains an element with the specified key; otherwise, . + + + Determines whether the immutable dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable dictionary, possibly overwriting an existing value for the key. + The key of the entry to add. + The key value to set. + A new immutable dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + A new immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the immutable dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the immutable dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the additional key/value pair. + + + See the interface. + Sequence of key/value pairs to be added to the dictionary. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty dictionary that has the same ordering and key-value comparison rules as this dictionary instance. + The immutable dictionary instance. + + + See the interface. + Key of the entry to be removed. + A new immutable dictionary with the specified element removed; or this instance if the specified key cannot be found in the dictionary. + + + See the interface. + Sequence of keys to be removed. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + See the interface. + Key of entry to be added. + Value of the entry to be added. + A new immutable dictionary that contains the specified key/value pair. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + The key-value pairs to set on the map. Any keys that conflict with existing keys will replace the previous values. + A copy of the immutable dictionary with updated key-value pairs. + + + Creates an immutable dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Gets an instance of the immutable dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The type of the key. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable dictionary. + The key comparer. + + + Gets the keys in the immutable dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The type of the key. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable dictionary. + The values in the immutable dictionary. + + + Represents a hash map that mutates with little or no memory allocations and that can produce or build on immutable hash map instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable dictionary. + The key of the element to add. + The value of the element to add. + + is null. + An element with the same key already exists in the dictionary. + The dictionary is read-only. + + + Adds the specified item to the immutable dictionary. + The object to add to the dictionary. + The dictionary is read-only. + + + Adds a sequence of values to this collection. + The items to add to this collection. + + + Removes all items from the immutable dictionary. + The dictionary is read-only. + + + Determines whether the immutable dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified key. + The key to locate in the dictionary. + + is null. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable dictionary contains an element that has the specified value. + The value to locate in the immutable dictionary. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable dictionary. + An enumerator that can be used to iterate through the collection. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable dictionary. + The key of the element to remove. + + is null. + The dictionary is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the dictionary. + + + Removes the first occurrence of a specific object from the immutable dictionary. + The object to remove from the dictionary. + The dictionary is read-only. + + if was successfully removed from the dictionary; otherwise, . This method also returns false if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable dictionary. + The keys for entries to remove from the dictionary. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array of type , starting at the specified array index. + The one-dimensional array of type that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable dictionary based on the contents of this instance. + An immutable dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Returns the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, returns the default value for the type of the parameter. This parameter is passed uninitialized. + + is null. + + if the object that implements the immutable dictionary contains an element with the specified key; otherwise, . + + + Gets the number of elements contained in the immutable dictionary. + The number of elements contained in the immutable dictionary. + + + Gets or sets the element with the specified key. + The element to get or set. + + is . + The property is being retrieved, and is not found. + The property is being set, and the is read-only. + The element that has the specified key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a collection that contains the keys of the immutable dictionary. + A collection that contains the keys of the object that implements the immutable dictionary. + + + Gets a value that indicates whether the collection is read-only. + + if the collection is read-only; otherwise, . + + + Gets a collection containing the keys of the generic dictionary. + A collection containing the keys of the object that implements the generic dictionary. + + + Gets a collection containing the values in the generic dictionary. + A collection containing the values in the object that implements the generic dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + Value stored under specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of the immutable dictionary without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable dictionary. + The dictionary was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the dictionary. + The dictionary was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element in the dictionary at the current position of the enumerator. + + + Gets the current element. + Current element in enumeration. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable hash set. + The type of items to be stored in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the specified array of items. + An array that contains the items to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates an empty immutable hash set that uses the specified equality comparer. + The object to use for comparing objects in the set for equality. + The type of items in the immutable hash set. + An empty immutable hash set. + + + Creates a new immutable hash set that contains the specified item and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The item to prepopulate the hash set with. + The type of items in the immutable hash set. + A new immutable hash set that contains the specified item. + + + Creates a new immutable hash set that contains the items in the specified collection and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + An array that contains the items to prepopulate the hash set with. + The type of items stored in the immutable hash set. + A new immutable hash set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The equality comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable collection prefilled with the specified items. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable hash set builder. + The type of items stored by the collection. + The immutable hash set builder. + + + Creates a new immutable hash set builder. + The object to use for comparing objects in the set for equality. + The type of items stored by the collection. + The new immutable hash set builder. + + + Creates a new immutable hash set prefilled with the specified items. + The items to add to the hash set. + The type of items stored by the collection. + The new immutable hash set that contains the specified items. + + + Creates a new immutable hash set that contains the specified items and uses the specified equality comparer for the set type. + The object to use for comparing objects in the set for equality. + The items add to the collection before immutability is applied. + The type of items stored in the collection. + The new immutable hash set. + + + Enumerates a sequence and produces an immutable hash set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable hash set of its contents, and uses the specified equality comparer for the set type. + The sequence to enumerate. + The object to use for comparing objects in the set for equality. + The type of the elements in the sequence. + An immutable hash set that contains the items in the specified sequence and uses the specified equality comparer. + + + Creates an immutable hash set from the current contents of the builder's set. + The builder to create the immutable hash set from. + The type of the elements in the hash set. + An immutable hash set that contains the current contents in the builder's set. + + + Represents an immutable, unordered hash set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the hash set. + + + Gets an immutable hash set for this type that uses the default . + + + Adds the specified element to the hash set. + The element to add to the set. + A hash set that contains the added value and any values previously held by the object. + + + Retrieves an empty immutable hash set that has the same sorting and ordering semantics as this instance. + An empty hash set that has the same sorting and ordering semantics as this instance. + + + Determines whether this immutable hash set contains the specified element. + The object to locate in the immutable hash set. + + if is found in the ; otherwise, . + + + Removes the elements in the specified collection from the current immutable hash set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Determines whether the current immutable hash set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of the specified collection; otherwise, . + + + Determines whether the current immutable hash set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and the specified collection share at least one common element; otherwise, . + + + Removes the specified element from this immutable hash set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Determines whether the current immutable hash set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable hash set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Adds an item to the set. + The object to add to the set. + The set is read-only. + + + Removes all items from this set. + The set is read-only. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + + if the element is successfully removed; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that iterates through the collection. + + + Adds an element to the current set and returns a value that indicates whether the element was successfully added. + The element to add to the collection. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current collection. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or in the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a set. + An enumerator that can be used to iterate through the set. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting or ordering semantics as this instance. + + + Removes the elements in the specified collection from the current set. + The collection of items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates an immutable hash set that has the same contents as this set and can be efficiently mutated across multiple operations by using standard mutable interfaces. + A set with the same contents as this set that can be efficiently mutated across multiple operations by using standard mutable interfaces. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Creates a new immutable hash set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable hash set with the items added; or the original set if all the items were already in the set. + + + Gets an instance of the immutable hash set that uses the specified equality comparer for its search methods. + The equality comparer to use. + An instance of this immutable hash set that uses the given comparer. + + + Gets the number of elements in the immutable hash set. + The number of elements in the hash set. + + + Gets a value that indicates whether the current immutable hash set is empty. + + if this instance is empty; otherwise, . + + + Gets the object that is used to obtain hash codes for the keys and to check the equality of values in the immutable hash set. + The comparer used to obtain hash codes for the keys and check equality. + + + See the interface. + + if the is read-only; otherwise, . + + + See the interface. + + if access to the is synchronized (thread safe); otherwise, . + + + See . + An object that can be used to synchronize access to the . + + + Represents a hash set that mutates with little or no memory allocations and that can produce or build on immutable hash set instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds the specified item to the immutable hash set. + The item to add. + + if the item did not already belong to the collection; otherwise, . + + + Removes all items from the immutable hash set. + The hash set is read-only. + + + Determines whether the immutable hash set contains a specific value. + The object to locate in the hash set. + + if is found in the hash set ; otherwise, . + + + Removes all elements in the specified collection from the current hash set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the immutable hash set. + An enumerator that can be used to iterate through the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of a specific object from the immutable hash set. + The object to remove from the set. + The set is read-only. + + if was successfully removed from the set ; otherwise, . This method also returns if is not found in the original set. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an item to the hash set. + The object to add to the set. + The set is read-only. + + + Copies the elements of the hash set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the hash set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Creates an immutable hash set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current set. + + + Gets the number of elements contained in the immutable hash set. + The number of elements contained in the immutable hash set. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Enumerates the contents of the immutable hash set without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable hash set. + The hash set was modified after the enumerator was created. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the hash set. + + + Sets the enumerator to its initial position, which is before the first element in the hash set. + The hash set was modified after the enumerator was created. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Gets the current element. + The element in the collection at the current position of the enumerator. + + + Contains interlocked exchange mechanisms for immutable collections. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The value to use if no previous value exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Obtains the value from a dictionary after having added it or updated an existing entry. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to add or update. + The function that receives the key and returns a new value to add to the dictionary when no value previously exists. + The function that receives the key and prior value and returns the new value with which to update the dictionary. + The type of key stored by the dictionary. + The type of value stored by the dictionary. + The added or updated value. + + + Atomically enqueues an element to the end of a queue. + The variable or field to atomically update. + The value to enqueue. + The type of items contained in the collection. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified key is not in the dictionary. + The key for the value to get or add. + The value to add to the dictionary the key is not found. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to atomically update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. This delegate will not be invoked more than once. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The value at the specified key or if the key was not present. + + + Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary. + The variable or field to update if the specified is not in the dictionary. + The key for the value to retrieve or add. + The function to execute to obtain the value to insert into the dictionary if the key is not found. + The argument to pass to the value factory. + The type of the keys contained in the collection. + The type of the values contained in the collection. + The type of the argument supplied to the value factory. + The value at the specified key or if the key was not present. + + + Compares two immutable arrays for equality and, if they are equal, replaces one of the arrays. + The destination, whose value is compared with and possibly replaced. + The value that replaces the destination value if the comparison results in equality. + The value that is compared to the value at . + The type of element stored by the array. + The original value in . + + + Sets an array to the specified array and returns a reference to the original array, as an atomic operation. + The array to set to the specified value. + The value to which the parameter is set. + The type of element stored by the array. + The original value of . + + + Sets an array to the specified array if the array has not been initialized. + The array to set to the specified value. + The value to which the parameter is set, if it's not initialized. + The type of element stored by the array. + + if the array was assigned the specified value; otherwise, . + + + Pushes a new element onto the stack. + The stack to update. + The value to push on the stack. + The type of items in the stack. + + + Adds the specified key and value to the dictionary if the key is not in the dictionary. + The dictionary to update with the specified key and value. + The key to add, if is not already defined in the dictionary. + The value to add. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key is not in the dictionary; otherwise, . + + + Atomically removes and returns the specified element at the head of the queue, if the queue is not empty. + The variable or field to atomically update. + Set to the value from the head of the queue, if the queue not empty. + The type of items in the queue. + + if the queue is not empty and the head element is removed; otherwise, . + + + Removes an element from the top of the stack, if there is an element to remove. + The stack to update. + Receives the value removed from the stack, if the stack is not empty. + The type of items in the stack. + + if an element is removed from the stack; otherwise, . + + + Removes the element with the specified key, if the key exists. + The dictionary to update. + The key to remove. + Receives the value of the removed item, if the dictionary is not empty. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if the key was found and removed; otherwise, . + + + Sets the specified key to the specified value if the specified key already is set to a specific value. + The dictionary to update. + The key to update. + The new value to set. + The current value for in order for the update to succeed. + The type of the keys contained in the collection. + The type of the values contained in the collection. + + if and are present in the dictionary and comparison was updated to ; otherwise, . + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The type of data in the immutable array. + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. The transformation is retried as many times as necessary to win the optimistic locking race. + The variable or field to be changed, which may be accessed by multiple threads. + A function that mutates the value. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. + The transformation is retried as many times as necessary to win the optimistic locking race. + The immutable array to be changed. + A function that produces the new array from the old. This function should be side-effect free, as it may run multiple times when races occur with other threads. + The argument to pass to . + The type of data in the immutable array. + The type of argument passed to the . + + if the location's value is changed by applying the result of the function; if the location's value remained the same because the last invocation of returned the existing value. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable list. + The type of items to be stored in the . + An empty immutable list. + + + Creates a new immutable list that contains the specified item. + The item to prepopulate the list with. + The type of items in the . + A new that contains the specified item. + + + Creates a new immutable list that contains the specified array of items. + An array that contains the items to prepopulate the list with. + The type of items in the . + A new immutable list that contains the specified items. + + + Creates a new immutable list that contains the items from the specified span of items. + A span that contains the items to prepopulate the list with. + The type of items stored by the collection. + A new immutable list that contains the specified items. + + + Creates a new immutable list builder. + The type of items stored by the collection. + The immutable collection builder. + + + Creates a new immutable list that contains the specified items. + The items to add to the list. + The type of items in the . + An immutable list that contains the specified items. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the first occurrence of item within the range of elements in the Immutable list that extends from index to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The equality comparer to use in the search. + The type of items in the list. + The zero-based index of the last occurrence of item within the entire the Immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The list to search. + The object to locate in the Immutable list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The type of items in the list. + The zero-based index of the last occurrence of item within the range of elements in the Immutable list that extends from the first element to index, if found; otherwise, -1. + + + Removes the specified value from this list. + The list to search. + The value to remove. + The type of items in the list. + A new immutable list with the element removed, or this list if the element is not in this list. + + + Removes the specified values from this list. + The list to search. + The items to remove if matches are found in this list. + The type of items in the list. + A new immutable list with the elements removed. + + + Replaces the first equal element in the list with the specified element. + The list to search. + The element to replace. + The element to replace the old element with. + The type of items in the list. + + does not exist in the list. + The new list -- even if the value being replaced is equal to the new value for that position. + + + Enumerates a sequence and produces an immutable list of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable list that contains the items in the specified sequence. + + + Creates an immutable list from the current contents of the builder's collection. + The builder to create the immutable list from. + The type of the elements in the list. + An immutable list that contains the current contents in the builder's collection. + + + Represents an immutable list, which is a strongly typed list of objects that can be accessed by index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the list. + + + Gets an empty immutable list. + + + Adds the specified object to the end of the immutable list. + The object to add. + A new immutable list with the object added. + + + Adds the elements of the specified collection to the end of the immutable list. + The collection whose elements will be added to the end of the list. + A new immutable list with the elements added. + + + Searches the entire sorted list for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be for reference types. + The default comparer cannot find a comparer implementation of the for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches the entire sorted list for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements or null to use the default comparer. + comparer is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted List, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Searches a range of elements in the sorted list for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + The comparer implementation to use when comparing elements, or to use the default comparer. + index is less than 0 or is less than 0. + index and do not denote a valid range in the list. + + is , and the default comparer cannot find an comparer implementation for type T. + The zero-based index of item in the sorted list, if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than item or, if there is no larger element, the bitwise complement of . + + + Removes all elements from the immutable list. + An empty list that retains the same sort or unordered semantics that this instance has. + + + Determines whether this immutable list contains the specified value. + The value to locate. + + if the list contains the specified value; otherwise, . + + + Converts the elements in the current immutable list to another type, and returns a list containing the converted elements. + A delegate that converts each element from one type to another type. + The type of the elements of the target array. + A list of the target type containing the converted elements from the current . + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Copies a range of elements from the immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list that contains all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by match, if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, ?1. + + + Performs the specified action on each element of the immutable list. + The delegate to perform on each element of the immutable list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the immutable list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the entire immutable list, if found; otherwise, ?1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the list that starts at the specified index and contains the specified number of elements. + The object to locate in the list The value can be null for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the first occurrence of item within the range of elements in the list that starts at index and contains count number of elements, if found; otherwise, -1. + + + Inserts the specified object into the immutable list at the specified index. + The zero-based index at which to insert the object. + The object to insert. + The new immutable list after the object is inserted. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which to insert the elements. + The collection whose elements should be inserted. + The new immutable list after the elements are inserted. + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + + is negative or not less than . + A read-only reference to the element at the given position. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the list that contains the specified number of elements and ends at the specified index. + The object to locate in the list. The value can be null for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The equality comparer to use in the search. + The zero-based index of the last occurrence of item within the range of elements in the list that contains count number of elements and ends at index, if found; otherwise, -1. + + + Removes the first occurrence of the specified object from this immutable list. + The object to remove. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes the first occurrence of the object that matches the specified value from this immutable list. + The value of the element to remove from the list. + The equality comparer to use in the search. + A new list with the object removed, or this list if the specified object is not in this list. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The new list with the elements removed. + + + Removes the element at the specified index. + The zero-based index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list. + The collection whose elements should be removed if matches are found in this list. + A new list with the elements removed. + + + Removes the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + A new list with the elements removed. + + + Removes a range of elements, starting from the specified index and containing the specified number of elements, from this immutable list. + The starting index to begin removal. + The number of elements to remove. + A new list with the elements removed. + + + Replaces the specified element in the immutable list with a new element. + The element to replace. + The element to replace with. + + does not exist in the immutable list. + The new list with the replaced element, even if it is equal to the old element. + + + Replaces the specified element in the immutable list with a new element. + The element to replace in the list. + The element to replace with. + The comparer to use to check for equality. + A new list with the object replaced, or this list if the specified object is not in this list. + + + Reverses the order of the elements in the entire immutable list. + The reversed list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + The reversed list. + + + Replaces an element at a given position in the immutable list with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list with the replaced element, even if it is equal to the old element at that position. + + + Sorts the elements in the entire immutable list using the default comparer. + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Sorts the elements in the entire immutable list using the specified comparer. + The delegate to use when comparing elements. + + is . + The sorted list. + + + Sorts a range of elements in the immutable list using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + The sorted list. + + + Adds the specified item to the immutable list. + The item to add. + Always thrown. + + + Removes all items from the immutable list. + + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove. + Always thrown. + + if was successfully removed from the list; otherwise, . This method also returns if is not found in the original list. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Inserts an object in the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert. + + + + Removes the value at the specified index. + The zero-based index of the item to remove. + + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified array index. + The one-dimensional array that is the destination of the elements copied from immutable list. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the immutable list. + An enumerator that can be used to iterate through the list. + + + Adds an item to the immutable list. + The object to add to the list. + Always thrown. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the list. + + + Removes all items from the immutable list. + Always thrown. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + + if the object is found in the list; otherwise, . + + + Determines the index of a specific item in the immutable list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item into the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + Always thrown. + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + Always thrown. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove. + Always thrown. + + + Adds the specified value to this immutable list. + The value to add. + A new list with the element added. + + + Adds the specified values to this immutable list. + The values to add. + A new list with the elements added. + + + Retrieves an empty list that has the same sorting and ordering semantics as this instance. + An empty list that has the same sorting and ordering semantics as this instance. + + + Inserts the specified element at the specified index in the immutable list. + The index at which to insert the value. + The element to insert. + A new immutable list that includes the specified element. + + + Inserts the specified elements at the specified index in the immutable list. + The index at which to insert the elements. + The elements to insert. + A new immutable list that includes the specified elements. + + + Removes the element with the specified value from the list. + The value of the element to remove from the list. + The comparer to use to compare elements for equality. + A new with the specified element removed. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + A new immutable list with the elements removed. + + + Removes the element at the specified index of the immutable list. + The index of the element to remove. + A new list with the element removed. + + + Removes a range of elements from this immutable list that match the items specified. + The range of items to remove from the list, if found. + The equality comparer to use to compare elements. + + or is . + An immutable list with the items removed. + + + Removes the specified number of elements at the specified location from this list. + The starting index of the range of elements to remove. + The number of elements to remove. + A new list with the elements removed. + + + Replaces an element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + + does not exist in the list. + The new list. + + + Replaces an element in the list at a given position with the specified element. + The position in the list of the element to replace. + The element to replace the old element with. + The new list. + + + Creates a list that has the same contents as this list and can be efficiently mutated across multiple operations using standard mutable interfaces. + The created list with the same contents as this list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements contained in the list. + The number of elements in the list. + + + Gets a value that indicates whether this list is empty. + + if the list is empty; otherwise, . + + + Gets the element at the specified index of the list. + The index of the element to retrieve. + In a get operation, is negative or not less than . + The element at the specified index. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the value at the specified index. + The zero-based index of the item to access. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + Value stored in the specified index. + + + This type is immutable, so it is always thread-safe. See the interface. + Boolean value determining whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value indicating whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + Thrown from getter when is negative or not less than . + Always thrown from the setter. + The value at the specified index. + + + Represents a list that mutates with little or no memory allocations and that can produce or build on immutable list instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an item to the immutable list. + The item to add to the list. + + + Adds a series of elements to the end of this list. + The elements to add to the end of the list. + + + Searches the entire for an element using the default comparer and returns the zero-based index of the element. + The object to locate. The value can be null for reference types. + The default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the entire for an element using the specified comparer and returns the zero-based index of the element. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Searches the specified range of the for an element using the specified comparer and returns the zero-based index of the element. + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. This value can be null for reference types. + The implementation to use when comparing elements, or for the default comparer. + + is less than 0. +-or- + + is less than 0. + + and do not denote a valid range in the . + + is , and the default comparer cannot find an implementation of the generic interface or the interface for type T. + The zero-based index of item in the , if item is found; otherwise, a negative number that is the bitwise complement of the index of the next element that is larger than . + + + Removes all items from the immutable list. + + + Determines whether the immutable list contains a specific value. + The object to locate in the list. + + if item is found in the list; otherwise, . + + + Creates a new immutable list from the list represented by this builder by using the converter function. + The converter function. + The type of the output of the delegate converter function. + A new immutable list from the list represented by this builder. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the beginning of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in array at which copying begins. + + + Copies the entire immutable list to a compatible one-dimensional array, starting at the specified index of the target array. + The zero-based index in the source immutable list at which copying begins. + The one-dimensional array that is the destination of the elements copied from the immutable list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + The number of elements to copy. + + + Determines whether the immutable list contains elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + + if the immutable list contains one or more elements that match the conditions defined by the specified predicate; otherwise, . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The first element that matches the conditions defined by the specified predicate, if found; otherwise, the default value for type . + + + Retrieves all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to search for. + An immutable list containing all the elements that match the conditions defined by the specified predicate, if found; otherwise, an empty immutable list. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The zero-based starting index of the search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The zero-based starting index of the search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the first occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The last element that matches the conditions defined by the specified predicate, found; otherwise, the default value for type . + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The zero-based starting index of the backward search. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the entire immutable list. + The delegate that defines the conditions of the element to search for. + The zero-based index of the last occurrence of an element that matches the conditions defined by , if found; otherwise, -1. + + + Performs the specified action on each element of the list. + The delegate to perform on each element of the list. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the list. + + + Creates a shallow copy of a range of elements in the source immutable list. + The zero-based index at which the range starts. + The number of elements in the range. + A shallow copy of a range of elements in the source immutable list. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the first occurrence of within the range of elements in the immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that extends from the specified index to the last element. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that extends from to the last element, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the immutable list that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements in the section to search. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the that starts at the specified index and contains the specified number of elements. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Inserts an item to the immutable list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the immutable list. + + + Inserts the elements of a collection into the immutable list at the specified index. + The zero-based index at which the new elements should be inserted. + The collection whose elements should be inserted into the immutable list. The collection itself cannot be , but it can contain elements that are null, if type T is a reference type. + + + Gets a read-only reference to the value for a given into the list. + The index of the desired element. + A read-only reference to the value at the specified . + + + Searches for the specified object and returns the zero-based index of the last occurrence within the entire immutable list. + The object to locate in the immutable list. The value can be for reference types. + The zero-based index of the last occurrence of within the entire immutable list, if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that extends from the first element to the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that extends from the first element to , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the backward search. + The number of elements in the section to search. + The zero-based index of the last occurrence of within the range of elements in the immutable list that contains number of elements and ends at , if found; otherwise, -1. + + + Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the immutable list that contains the specified number of elements and ends at the specified index. + The object to locate in the immutable list. The value can be for reference types. + The zero-based starting index of the search. 0 (zero) is valid in an empty list. + The number of elements to search. + The value comparer to use for comparing elements for equality. + The zero-based index of the first occurrence of item within the range of elements in the immutable list that starts at and contains number of elements, if found; otherwise, -1 + + + Removes the first occurrence of a specific object from the immutable list. + The object to remove from the list. + + if item was successfully removed from the list; otherwise, . This method also returns if item is not found in the list. + + + Removes the first occurrence matching the specified value from this list. + The item to remove. + The equality comparer to use in the search. + If , is used. + A value indicating whether the specified element was found and removed from the collection. + + + Removes all the elements that match the conditions defined by the specified predicate. + The delegate that defines the conditions of the elements to remove. + The number of elements removed from the immutable list. + + + Removes the item at the specified index of the immutable list. + The zero-based index of the item to remove from the list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + + + Removes any first occurrences of the specified values from this list. + The items to remove if matches are found in this list. + The equality comparer to use in the search. + If , is used. + + + Removes the specified range of values from this list. + The starting index to begin removal. + The number of elements to remove. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The old value does not exist in the list. + + + Replaces the first equal element in the list with the specified element. + The element to replace. + The element to replace the old element with. + The equality comparer to use in the search. + If , is used. + The old value does not exist in the list. + + + Reverses the order of the elements in the entire immutable list. + + + Reverses the order of the elements in the specified range of the immutable list. + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + + + Sorts the elements in the entire immutable list by using the default comparer. + + + Sorts the elements in the entire immutable list by using the specified comparer. + The implementation to use when comparing elements, or to use the default comparer (). + + + Sorts the elements in the entire immutable list by using the specified comparison object. + The object to use when comparing elements. + + is . + + + Sorts the elements in a range of elements in the immutable list by using the specified comparer. + The zero-based starting index of the range to sort. + The length of the range to sort. + The implementation to use when comparing elements, or to use the default comparer (). + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the list to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the list. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Adds an item to the list. + The object to add to the list. + + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the list. + + + + Determines whether the list contains a specific value. + The object to locate in the list. + + + if the is found in the list; otherwise, . + + + Determines the index of a specific item in the list. + The object to locate in the list. + + The index of if found in the list; otherwise, -1. + + + Inserts an item to the list at the specified index. + The zero-based index at which should be inserted. + The object to insert into the list. + + + + Removes the first occurrence of a specific object from the list. + The object to remove from the list. + + + + Creates an immutable list based on the contents of this instance. + An immutable list. + + + Determines whether every element in the immutable list matches the conditions defined by the specified predicate. + The delegate that defines the conditions to check against the elements. + + if every element in the immutable list matches the conditions defined by the specified predicate; otherwise, . If the list has no elements, the return value is . + + + Gets the number of elements in this immutable list. + The number of elements in this list. + + + Gets or sets the value for a given index in the list. + The index of the item to get or set. + The value at the specified index. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + The object at the specified index. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + + Advances enumeration to the next element of the immutable list. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the list. + + + Sets the enumerator to its initial position, which is before the first element in the immutable list. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable queue. + The type of items to be stored in the immutable queue. + An empty immutable queue. + + + Creates a new immutable queue that contains the specified item. + The item to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified item. + + + Creates a new immutable queue that contains the specified array of items. + An array that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified array of items. + A span that contains the items to prepopulate the queue with. + The type of items in the immutable queue. + A new immutable queue that contains the specified items. + + + Creates a new immutable queue that contains the specified items. + The items to add to the queue before immutability is applied. + The type of elements in the queue. + An immutable queue that contains the specified items. + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + The queue to remove the item from. + When this method returns, contains the item from the beginning of the queue. + The type of elements in the immutable queue. + The stack is empty. + The new queue with the item removed. + + + Represents an immutable queue. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the queue. + + + Removes all objects from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Removes the item at the beginning of the immutable queue, and returns the new queue. + When this method returns, contains the element from the beginning of the queue. + The queue is empty. + The new immutable queue with the beginning element removed. + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Returns an enumerator that iterates through the immutable queue. + An enumerator that can be used to iterate through the queue. + + + Returns the element at the beginning of the immutable queue without removing it. + The queue is empty. + The element at the beginning of the queue. + + + Gets a read-only reference to the element at the front of the queue. + The queue is empty. + Read-only reference to the element at the front of the queue. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable queue. + The empty immutable queue. + + + Removes the element at the beginning of the immutable queue, and returns the new queue. + The queue is empty. + The new immutable queue; never . + + + Adds an element to the end of the immutable queue, and returns the new queue. + The element to add. + The new immutable queue. + + + Gets an empty immutable queue. + An empty immutable queue. + + + Gets a value that indicates whether this immutable queue is empty. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if this queue is empty; otherwise, . + + + Enumerates the contents of an immutable queue without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable queue. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the queue. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key comparer. + The implementation to use to determine the equality of keys in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates an empty immutable sorted dictionary that uses the specified key and value comparers. + The implementation to use to determine the equality of keys in the dictionary. + The implementation to use to determine the equality of values in the dictionary. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + An empty immutable sorted dictionary. + + + Creates a new immutable sorted dictionary builder. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary builder. + The key comparer. + The value comparer. + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection builder. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key comparer. + The comparer implementation to use to evaluate keys for equality and sorting. + The items to add to the sorted dictionary. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + The new immutable sorted dictionary that contains the specified items and uses the specified key comparer. + + + Creates a new immutable sorted dictionary from the specified range of items with the specified key and value comparers. + The comparer implementation to use to compare keys for equality and sorting. + The comparer implementation to use to compare values for equality. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items and uses the specified comparers. + + + Creates an immutable sorted dictionary that contains the specified items and uses the default comparer. + The items to add to the sorted dictionary before it's immutable. + The type of keys stored in the dictionary. + The type of values stored in the dictionary. + An immutable sorted dictionary that contains the specified items. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents. + The sequence of key/value pairs to enumerate. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable dictionary of its contents by using the specified key comparer. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Enumerates a sequence of key/value pairs and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence of key/value pairs to enumerate. + The key comparer to use when building the immutable dictionary. + The value comparer to use for the immutable dictionary. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the key/value pairs in the specified sequence. + + + Creates an immutable sorted dictionary from the current contents of the builder's dictionary. + The builder to create the immutable sorted dictionary from. + The type of the keys in the dictionary. + The type of the values in the dictionary. + An immutable sorted dictionary that contains the current contents in the builder's dictionary. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key comparer. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable dictionary that contains the items in the specified sequence. + + + Enumerates and transforms a sequence, and produces an immutable sorted dictionary of its contents by using the specified key and value comparers. + The sequence to enumerate to generate the dictionary. + The function that will produce the key for the dictionary from each sequence element. + The function that will produce the value for the dictionary from each sequence element. + The key comparer to use for the dictionary. + The value comparer to use for the dictionary. + The type of the elements in the sequence. + The type of the keys in the resulting dictionary. + The type of the values in the resulting dictionary. + An immutable sorted dictionary that contains the items in the specified sequence. + + + Represents an immutable sorted dictionary. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of the key contained in the dictionary. + The type of the value contained in the dictionary. + + + Gets an empty immutable sorted dictionary. + + + Adds an element with the specified key and value to the immutable sorted dictionary. + The key of the entry to add. + The value of entry to add. + The given key already exists in the dictionary but has a different value. + A new immutable sorted dictionary that contains the additional key/value pair. + + + Adds the specific key/value pairs to the immutable sorted dictionary. + The key/value pairs to add. + One of the given keys already exists in the dictionary but has a different value. + A new immutable dictionary that contains the additional key/value pairs. + + + Retrieves an empty immutable sorted dictionary that has the same ordering and key/value comparison rules as this dictionary instance. + An empty dictionary with equivalent ordering and key/value comparison rules. + + + Determines whether this immutable sorted dictionary contains the specified key/value pair. + The key/value pair to locate. + + if the specified key/value pair is found in the dictionary; otherwise, . + + + Determines whether this immutable sorted map contains the specified key. + The key to locate. + + if the immutable dictionary contains the specified key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate. The value can be for reference types. + + if the dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Removes the element with the specified value from the immutable sorted dictionary. + The value of the element to remove. + A new immutable dictionary with the specified element removed; or this instance if the specified value cannot be found in the dictionary. + + + Removes the elements with the specified keys from the immutable sorted dictionary. + The keys of the elements to remove. + A new immutable dictionary with the specified keys removed; or this instance if the specified keys cannot be found in the dictionary. + + + Sets the specified key and value in the immutable sorted dictionary, possibly overwriting an existing value for the given key. + The key of the entry to add. + The key value to set. + A new immutable sorted dictionary that contains the specified key/value pair. + + + Sets the specified key/value pairs in the immutable sorted dictionary, possibly overwriting existing values for the keys. + The key/value pairs to set in the dictionary. If any of the keys already exist in the dictionary, this method will overwrite their previous values. + An immutable dictionary that contains the specified key/value pairs. + + + Adds an item to the . + The object to add to the . + + + Removes all items from the . + + + Copies the elements of the to an , starting at a particular index. + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the . + The object to remove from the . + + if was successfully removed from the ; otherwise, . This method also returns if is not found in the original . + + + Adds an element with the provided key and value to the generic dictionary. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + is . + An element with the same key already exists in the . + The is read-only. + + + Removes the element with the specified key from the generic dictionary. + The key of the element to remove. + + is . + The is read-only. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original generic dictionary. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The object to use as the key of the element to add. + The object to use as the value of the element to add. + + + Clears this instance. + The dictionary object is read-only. + + + Determines whether the immutable dictionary object contains an element with the specified key. + The key to locate in the dictionary object. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the immutable dictionary object. + An enumerator object for the dictionary object. + + + Removes the element with the specified key from the immutable dictionary object. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + See the interface. + Key of the entry to be added. + Value of the entry to be added. + The instance. + + + See the interface. + Sequence of key/value pairs to be added. + The instance. + + + See the interface. + The instance. + + + See the interface. + Key of entry to be removed. + The instance. + + + See the interface. + Sequence of keys to be removed. + The instance. + + + See the interface. + Key of entry to be updated. + Value of entry to be updated. + The instance. + + + Applies a given set of key-value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + A set of key-value pairs to set on the map. + The instance. + + + Creates an immutable sorted dictionary with the same contents as this dictionary that can be efficiently mutated across multiple operations by using standard mutable interfaces. + A collection with the same contents as this dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. + + if the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets an instance of the immutable sorted dictionary that uses the specified key comparer. + The key comparer to use. + An instance of the immutable dictionary that uses the given comparer. + + + Gets an instance of the immutable sorted dictionary that uses the specified key and value comparers. + The key comparer to use. + The value comparer to use. + An instance of the immutable dictionary that uses the given comparers. + + + Gets the number of key/value pairs in the immutable sorted dictionary. + The number of key/value pairs in the dictionary. + + + Gets a value that indicates whether this instance of the immutable sorted dictionary is empty. + + if this instance is empty; otherwise, . + + + Gets the associated with the specified key. + The key to retrieve the value for. + The value associated with the specified key. If no results are found, the operation throws an exception. + + + Gets the key comparer for the immutable sorted dictionary. + The key comparer for the dictionary. + + + Gets the keys in the immutable sorted dictionary. + The keys in the immutable dictionary. + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the with the specified key. + The object to use as the key of the element to access. + An object of type associated with the . + + + Gets the keys. + A collection containing the keys. + + + Gets the values. + A collection containing the values. + + + Gets a value indicating whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value indicating whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value indicating whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key of the element to be accessed. + Value stored under the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets the value comparer used to determine whether values are equal. + The value comparer used to determine whether values are equal. + + + Gets the values in the immutable sorted dictionary. + The values in the dictionary. + + + Represents a sorted dictionary that mutates with little or no memory allocations and that can produce or build on immutable sorted dictionary instances very efficiently. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Adds an element that has the specified key and value to the immutable sorted dictionary. + The key of the element to add. + The value of the element to add. + + + Adds the specified item to the immutable sorted dictionary. + The object to add to the dictionary. + + + Adds a sequence of values to the immutable sorted dictionary. + The items to add to the dictionary. + + + Removes all items from the immutable sorted dictionary. + + + Determines whether the immutable sorted dictionary contains a specific value. + The object to locate in the dictionary. + + if is found in the dictionary; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified key. + The key to locate in the dictionary. + + if the dictionary contains an element with the key; otherwise, . + + + Determines whether the immutable sorted dictionary contains an element with the specified value. + The value to locate in the dictionary. The value can be for reference types. + + if the immutable sorted dictionary contains an element with the specified value; otherwise, . + + + Returns an enumerator that iterates through the immutable sorted dictionary. + An enumerator that can be used to iterate through the dictionary. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + Gets the value for a given key if a matching key exists in the dictionary; otherwise the default value. + The key to search for. + The default value to return if no matching key is found in the dictionary. + The value for the key, or if no matching key was found. + + + Removes the element with the specified key from the immutable sorted dictionary. + The key of the element to remove. + + if the element is successfully removed; otherwise, . This method also returns if was not found in the original dictionary. + + + Removes the first occurrence of a specific object from the immutable sorted dictionary. + The object to remove from the dictionary. + + if was successfully removed from the dictionary; otherwise, . This method also returns if is not found in the dictionary. + + + Removes any entries with keys that match those found in the specified sequence from the immutable sorted dictionary. + The keys for entries to remove from the dictionary. + + + See . + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + See . + An enumerator that can be used to iterate through the collection. + + + Copies the elements of the dictionary to an array, starting at a particular array index. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The one-dimensional array that is the destination of the elements copied from the dictionary. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Adds an element with the provided key and value to the dictionary object. + The key of the element to add. + The value of the element to add. + + + Determines whether the dictionary object contains an element with the specified key. + The key to locate. + + if the dictionary contains an element with the key; otherwise, . + + + Returns an object for the dictionary. + An object for the dictionary. + + + Removes the element with the specified key from the dictionary. + The key of the element to remove. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Creates an immutable sorted dictionary based on the contents of this instance. + An immutable sorted dictionary. + + + Determines whether this dictionary contains a specified key. + The key to search for. + The matching key located in the dictionary if found, or equalkey if no match is found. + + if a match for is found; otherwise, . + + + Gets the value associated with the specified key. + The key whose value will be retrieved. + When this method returns, contains the value associated with the specified key, if the key is found; otherwise, contains the default value for the type of the parameter. This parameter is passed uninitialized. + + if the object that implements the dictionary contains an element with the specified key; otherwise, . + + + Returns a read-only reference to the value associated with the provided . + Key of the entry to be looked up. + The is not present. + A read-only reference to the value associated with the provided . + + + Gets the number of elements in this immutable sorted dictionary. + The number of elements in this dictionary. + + + Gets or sets the value for a specified key in the immutable sorted dictionary. + The key to retrieve the value for. + The value associated with the given key. + + + Gets or sets the key comparer. + The key comparer. + + + Gets a strongly typed, read-only collection of elements. + A strongly typed, read-only collection of elements. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Returns a collection containing all keys stored in the dictionary. See . + A collection containing all keys stored in the dictionary. + + + Returns a collection containing all values stored in the dictionary. See . + A collection containing all values stored in the dictionary. + + + Gets a value that indicates whether access to the is synchronized (thread safe). + + if access to the is synchronized (thread safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Gets a value that indicates whether the object has a fixed size. + + if the object has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the element with the specified key. + The key. + The value associated with the specified key. + + + Gets an containing the keys of the . + An containing the keys of the object that implements . + + + Gets an containing the values in the . + An containing the values in the object that implements . + + + Gets or sets the value comparer. + The value comparer. + + + Gets a collection that contains the values of the immutable sorted dictionary. + A collection that contains the values of the object that implements the dictionary. + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + + Releases the resources used by the current instance of the class. + + + Advances the enumerator to the next element of the immutable sorted dictionary. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted dictionary. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted dictionary. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable sorted set. + The type of items to be stored in the immutable set. + An empty immutable sorted set. + + + Creates a new immutable sorted set that contains the specified item. + The item to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates an empty immutable sorted set that uses the specified comparer. + The implementation to use when comparing items in the set. + The type of items in the immutable set. + An empty immutable set. + + + Creates a new immutable sorted set that contains the specified item and uses the specified comparer. + The implementation to use when comparing items in the set. + The item to prepopulate the set with. + The type of items stored in the immutable set. + A new immutable set that contains the specified item. + + + Creates a new immutable sorted set that contains the specified array of items and uses the specified comparer. + The implementation to use when comparing items in the set. + An array that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Creates a new immutable collection prefilled with the specified items. + The comparer. + The items to prepopulate. + The type of items stored by the collection. + The new immutable collection. + + + Creates a new immutable sorted set that contains the specified array of items. + A span that contains the items to prepopulate the set with. + The type of items in the immutable set. + A new immutable set that contains the specified items. + + + Returns a collection that can be used to build an immutable sorted set. + The type of items stored by the collection. + The immutable collection builder. + + + Returns a collection that can be used to build an immutable sorted set. + The comparer used to compare items in the set for equality. + The type of items stored by the collection. + The immutable collection. + + + Creates a new immutable collection that contains the specified items. + The comparer to use to compare elements in this set. + The items to add to the set before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Creates a new immutable collection that contains the specified items. + The items to add to the set with before it's immutable. + The type of items stored by the collection. + The new immutable set that contains the specified items. + + + Enumerates a sequence and produces an immutable sorted set of its contents. + The sequence to enumerate. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Enumerates a sequence, produces an immutable sorted set of its contents, and uses the specified comparer. + The sequence to enumerate. + The comparer to use for initializing and adding members to the sorted set. + The type of the elements in the sequence. + An immutable sorted set that contains the items in the specified sequence. + + + Creates an immutable sorted set from the current contents of the builder's set. + The builder to create the immutable sorted set from. + The type of the elements in the immutable sorted set. + An immutable sorted set that contains the current contents in the builder's set. + + + Represents an immutable sorted set implementation. + +NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of elements in the set. + + + Gets an empty immutable sorted set. + + + Adds the specified value to this immutable sorted set. + The value to add. + A new set with the element added, or this set if the element is already in this set. + + + Removes all elements from the immutable sorted set. + An empty set with the elements removed. + + + Determines whether this immutable sorted set contains the specified value. + The value to check for. + + if the set contains the specified value; otherwise, . + + + Removes a specified set of items from this immutable sorted set. + The items to remove from this set. + A new set with the items removed; or the original set if none of the items were in the set. + + + Returns an enumerator that iterates through the immutable sorted set. + An enumerator that can be used to iterate through the set. + + + Gets the position within this immutable sorted set that the specified value appears in. + The value whose position is being sought. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, this method returns a negative number that is the bitwise complement of the index of the first element that is larger than value. If is not found and is greater than any of the elements in the set, this method returns a negative number that is the bitwise complement of the index of the last element plus 1. + + + Creates an immutable sorted set that contains elements that exist both in this set and in the specified set. + The set to intersect with this one. + A new immutable sorted set that contains any elements that exist in both sets. + + + Determines whether the current immutable sorted set is a proper (strict) subset of the specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a proper superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current immutable sorted set is a subset of a specified collection. + The collection to compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current immutable sorted set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference of the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference of the element at the given position. + + + Determines whether the current immutable sorted set and a specified collection share common elements. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the specified value from this immutable sorted set. + The element to remove. + A new immutable sorted set with the element removed, or this set if the element was not found in the set. + + + Returns an that iterates over this immutable sorted set in reverse order. + An enumerator that iterates over the immutable sorted set in reverse order. + + + Determines whether the current immutable sorted set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the sets are equal; otherwise, . + + + Creates an immutable sorted set that contains elements that exist either in this set or in a given sequence, but not both. + The other sequence of items. + The new immutable sorted set. + + + Adds the specified value to the collection. + The value to add. + + + Removes all the items from the collection. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Removes the first occurrence of a specific object from the collection. + The object to remove from the collection. + + if was successfully removed from the collection; otherwise, . + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Inserts an item in the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + + + Removes the item at the specified index. + The zero-based index of the item to remove. + + + Adds an element to the current set and returns a value to indicate if the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements in the specified collection from the current set. + The collection of items to remove from the set. + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Modifies the current set so that it contains all elements that are present in either the current set or the specified collection. + The collection to compare to the current set. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through a collection. + An enumerator object that can be used to iterate through the collection. + + + Adds an item to the set. + The object to add to the set. + The set is read-only or has a fixed size. + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection. + + + Removes all items from the set. + Thrown in all cases. + + + Determines whether the set contains a specific value. + The object to locate in the set. + + if the object is found in the set; otherwise, . + + + Determines the index of a specific item in the set. + The object to locate in the set. + The index of if found in the list; otherwise, -1. + + + Inserts an item into the set at the specified index. + The zero-based index at which should be inserted. + The object to insert into the set. + The set is read-only or has a fixed size. + + + Removes the first occurrence of a specific object from the set. + The object to remove from the set. + The set is read-only or has a fixed size. + + + Removes the item at the specified index of the set. + The zero-based index of the item to remove. + The set is read-only or has a fixed size. + + + Adds the specified element to this immutable set. + The element to add. + A new set with the element added, or this set if the element is already in the set. + + + Retrieves an empty immutable set that has the same sorting and ordering semantics as this instance. + An empty set that has the same sorting and ordering semantics as this instance. + + + Removes the elements in the specified collection from the current immutable set. + The items to remove from this set. + The new set with the items removed; or the original set if none of the items were in the set. + + + Creates an immutable set that contains elements that exist in both this set and the specified set. + The collection to compare to the current set. + A new immutable set that contains any elements that exist in both sets. + + + Removes the specified element from this immutable set. + The element to remove. + A new set with the specified element removed, or the current set if the element cannot be found in the set. + + + Creates an immutable set that contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + A new set that contains the elements that are present only in the current set or in the specified collection, but not both. + + + Creates a new immutable set that contains all elements that are present in either the current set or in the specified collection. + The collection to add elements from. + A new immutable set with the items added; or the original set if all the items were already in the set. + + + Creates a collection that has the same contents as this immutable sorted set that can be efficiently manipulated by using standard mutable interfaces. + The sorted set builder. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value to search for. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Adds a given set of items to this immutable sorted set. + The items to add. + The new set with the items added; or the original set if all the items were already in the set. + + + Returns the immutable sorted set that has the specified key comparer. + The comparer to check for. + The immutable sorted set that has the specified key comparer. + + + Gets the number of elements in the immutable sorted set. + The number of elements in the immutable sorted set. + + + Gets a value that indicates whether this immutable sorted set is empty. + + if this set is empty; otherwise, . + + + Gets the element of the immutable sorted set at the given index. + The index of the element to retrieve from the sorted set. + The element at the given index. + + + Gets the comparer used to sort keys in the immutable sorted set. + The comparer used to sort keys. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Returns true, since immutable collections are always read-only. See the interface. + A boolean value indicating whether the collection is read-only. + + + See the interface. + The zero-based index of the item to access. + The element stored at the specified index. + + + Returns true, since immutable collections are always thread-safe. See the interface. + A boolean value indicating whether the collection is thread-safe. + + + See . + Object used for synchronizing access to the collection. + + + Gets a value that indicates whether the has a fixed size. + + if the has a fixed size; otherwise, . + + + Gets a value that indicates whether the is read-only. + + if the is read-only; otherwise, . + + + Gets or sets the at the specified index. + The index. + + The . + + + Represents a sorted set that enables changes with little or no memory allocations, and efficiently manipulates or builds immutable sorted sets. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + if the element is added to the set; if the element is already in the set. + + + Removes all elements from this set. + + + Determines whether the set contains the specified object. + The object to locate in the set. + + if is found in the set; otherwise, . + + + Removes the specified set of items from the current set. + The collection of items to remove from the set. + + + Returns an enumerator that iterates through the set. + A enumerator that can be used to iterate through the set. + + + Searches for the first index within this set that the specified value is contained. + The value to locate within the set. + The index of the specified in the sorted set, if is found. If is not found and is less than one or more elements in this set, returns a negative number that is the bitwise complement of the index of the first element that's larger than . If is not found and is greater than any of the elements in the set, returns a negative number that is the bitwise complement of (the index of the last element plus 1). + + + Modifies the current set so that it contains only elements that are also in a specified collection. + The collection to compare to the current set. + + + Determines whether the current set is a proper (strict) subset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper subset of ; otherwise, . + + + Determines whether the current set is a proper (strict) superset of a specified collection. + The collection to compare to the current set. + + if the current set is a proper superset of ; otherwise, . + + + Determines whether the current set is a subset of a specified collection. + The collection is compare to the current set. + + if the current set is a subset of ; otherwise, . + + + Determines whether the current set is a superset of a specified collection. + The collection to compare to the current set. + + if the current set is a superset of ; otherwise, . + + + Gets a read-only reference to the element of the set at the given . + The 0-based index of the element in the set to return. + A read-only reference to the element at the given position. + + + Determines whether the current set overlaps with the specified collection. + The collection to compare to the current set. + + if the current set and share at least one common element; otherwise, . + + + Removes the first occurrence of the specified object from the set. + The object to remove from the set. + + if was removed from the set; if was not found in the set. + + + Returns an enumerator that iterates over the immutable sorted set in reverse order. + An enumerator that iterates over the set in reverse order. + + + Determines whether the current set and the specified collection contain the same elements. + The collection to compare to the current set. + + if the current set is equal to ; otherwise, . + + + Modifies the current set so that it contains only elements that are present either in the current set or in the specified collection, but not both. + The collection to compare to the current set. + + + Adds an element to the current set and returns a value to indicate whether the element was successfully added. + The element to add to the set. + + + Copies the elements of the collection to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from collection. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Copies the elements of the set to an array, starting at a particular array index. + The one-dimensional array that is the destination of the elements copied from the set. The array must have zero-based indexing. + The zero-based index in at which copying begins. + + + Returns an enumerator that iterates through the collection. + A enumerator that can be used to iterate through the collection. + + + Creates an immutable sorted set based on the contents of this instance. + An immutable set. + + + Searches the set for a given value and returns the equal value it finds, if any. + The value for which to search. + The value from the set that the search found, or the original value if the search yielded no match. + A value indicating whether the search was successful. + + + Modifies the current set so that it contains all elements that are present in both the current set and in the specified collection. + The collection to compare to the current state. + + + Gets the number of elements in the immutable sorted set. + The number of elements in this set. + + + Gets the element of the set at the given index. + The 0-based index of the element in the set to return. + The element at the given position. + + + Gets or sets the object that is used to determine equality for the values in the immutable sorted set. + The comparer that is used to determine equality for the values in the set. + + + Gets the maximum value in the immutable sorted set, as defined by the comparer. + The maximum value in the set. + + + Gets the minimum value in the immutable sorted set, as defined by the comparer. + The minimum value in the set. + + + Gets a value that indicates whether this instance is read-only. + Always . + + + Gets a value that indicates whether access to the is synchronized (thread-safe). + + if access to the is synchronized (thread-safe); otherwise, . + + + Gets an object that can be used to synchronize access to the . + An object that can be used to synchronize access to the . + + + Enumerates the contents of a binary tree. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Releases the resources used by the current instance of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Advances the enumerator to the next element of the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the sorted set. + + + Sets the enumerator to its initial position, which is before the first element in the immutable sorted set. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Gets the element at the current position of the enumerator. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The element at the current position of the enumerator. + + + The current element. + The element in the collection at the current position of the enumerator. + + + Provides a set of initialization methods for instances of the class. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Creates an empty immutable stack. + The type of items to be stored in the immutable stack. + An empty immutable stack. + + + Creates a new immutable stack that contains the specified item. + The item to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable collection that contains the specified item. + + + Creates a new immutable stack that contains the specified array of items. + An array that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified array of items. + A span that contains the items to prepopulate the stack with. + The type of items in the immutable stack. + A new immutable stack that contains the specified items. + + + Creates a new immutable stack that contains the specified items. + The items to add to the stack before it's immutable. + The type of items in the stack. + An immutable stack that contains the specified items. + + + Removes the specified item from an immutable stack. + The stack to modify. + The item to remove from the stack. + The type of items contained in the stack. + The stack is empty. + A stack; never . + + + Represents an immutable stack. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + The type of element on the stack. + + + Removes all objects from the immutable stack. + An empty immutable stack. + + + Returns an enumerator that iterates through the immutable stack. + An enumerator that can be used to iterate through the stack. + + + Returns the object at the top of the stack without removing it. + The stack is empty. + The object at the top of the stack. + + + Gets a read-only reference to the element on the top of the stack. + The stack is empty. + A read-only reference to the element on the top of the stack. + + + Removes the element at the top of the immutable stack and returns the stack after the removal. + The stack is empty. + A stack; never . + + + Removes the specified element from the immutable stack and returns the stack after the removal. + The value to remove from the stack. + A stack; never . + + + Inserts an object at the top of the immutable stack and returns the new stack. + The object to push onto the stack. + The new stack. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Removes all elements from the immutable stack. + The empty immutable stack. + + + Removes the element at the top of the immutable stack and returns the new stack. + The stack is empty. + The new stack; never . + + + Inserts an element at the top of the immutable stack and returns the new stack. + The element to push onto the stack. + The new stack. + + + Gets an empty immutable stack. + An empty immutable stack. + + + Gets a value that indicates whether this instance of the immutable stack is empty. + + if this instance is empty; otherwise, . + + + Enumerates the contents of an immutable stack without allocating any memory. + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + + Advances the enumerator to the next element of the immutable stack. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the stack. + + + Gets the element at the current position of the enumerator. + The element at the current position of the enumerator. + + + LINQ extension method overrides that offer greater efficiency for than the standard LINQ methods + + NuGet package: System.Collections.Immutable (about immutable collections and how to install) + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + A function to be invoked on each element, in a cumulative way. + The type of element contained by the collection. + The final value after the cumulative function has been applied to all elements. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + The type of the accumulated value. + The type of element contained by the collection. + The final accumulator value. + + + Applies a function to a sequence of elements in a cumulative way. + The collection to apply the function to. + The initial accumulator value. + A function to be invoked on each element, in a cumulative way. + A function to transform the final accumulator value into the result type. + The type of the accumulated value. + The type of result returned by the result selector. + The type of element contained by the collection. + The final accumulator value. + + + Gets a value indicating whether all elements in this array match a given condition. + The array to check for matches. + The predicate. + The type of element contained by the collection. + + if every element of the source sequence passes the test in the specified predicate; otherwise, . + + + Returns a value indicating whether this collection contains any elements. + The builder to check for matches. + The type of elements in the array. + + if the array builder contains any elements; otherwise, . + + + Gets a value indicating whether the array contains any elements. + The array to check for elements. + The type of element contained by the collection. + + if the array contains an elements; otherwise, . + + + Gets a value indicating whether the array contains any elements that match a specified condition. + The array to check for elements. + The delegate that defines the condition to match to an element. + The type of element contained by the collection. + + if an element matches the specified condition; otherwise, . + + + Returns the element at a specified index in the array. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index. + + + Returns the element at a specified index in a sequence or a default value if the index is out of range. + The array to find an element in. + The index for the element to retrieve. + The type of element contained by the collection. + The item at the specified index, or the default value if the index is not found. + + + Returns the first element in the collection. + The builder to retrieve an item from. + The type of items in the array. + If the array is empty. + The first item in the list. + + + Returns the first element in an array. + The array to get an item from. + The type of element contained by the collection. + If the array is empty. + The first item in the array. + + + Returns the first element in a sequence that satisfies a specified condition. + The array to get an item from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + If the array is empty. + The first item in the list if it meets the condition specified by . + + + Returns the first element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the first element of the sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve elements from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The first item in the list, if found; otherwise the default value for the item type. + + + Returns the last element in the collection. + The builder to retrieve elements from. + The type of item in the builder. + The collection is empty. + The last element in the builder. + + + Returns the last element of the array. + The array to retrieve items from. + The type of element contained by the array. + The collection is empty. + The last element in the array. + + + Returns the last element of a sequence that satisfies a specified condition. + The array to retrieve elements from. + The delegate that defines the conditions of the element to retrieve. + The type of element contained by the collection. + The collection is empty. + The last element of the array that satisfies the condition. + + + Returns the last element in the collection, or the default value if the collection is empty. + The builder to retrieve an element from. + The type of item in the builder. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence, or a default value if the sequence contains no elements. + The array to retrieve items from. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Returns the last element of a sequence that satisfies a condition or a default value if no such element is found. + The array to retrieve an element from. + The delegate that defines the conditions of the element to search for. + The type of element contained by the collection. + The last element of a sequence, or a default value if the sequence contains no elements. + + + Projects each element of a sequence into a new form. + The immutable array to select items from. + A transform function to apply to each element. + The type of element contained by the collection. + The type of the result element. + An whose elements are the result of invoking the transform function on each element of source. + + + Projects each element of a sequence to an , flattens the resulting sequences into one sequence, and invokes a result selector function on each element therein. + The immutable array. + A transform function to apply to each element of the input sequence. + A transform function to apply to each element of the intermediate sequence. + The type of the elements of . + The type of the intermediate elements collected by . + The type of the elements of the resulting sequence. + An whose elements are the result of invoking the one-to-many transform function on each element of and then mapping each of those sequence elements and their corresponding source element to a result element. + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Determines whether two sequences are equal according to an equality comparer. + The array to use for comparison. + The items to use for comparison. + The comparer to use to check for equality. + The type of element in the compared array. + The type of element contained by the collection. + + to indicate the sequences are equal; otherwise, . + + + Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence. + The array to retrieve the element from. + The type of element contained by the collection. + The element in the sequence. + + + Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists. + The immutable array to return a single element from. + The function to test whether an element should be returned. + The type of element contained by the collection. + Returns . + + + Returns the only element of the array, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence. + The array. + The type of element contained by the collection. + + contains more than one element. + The element in the array, or the default value if the array is empty. + + + Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition. + The array to get the element from. + The condition the element must satisfy. + The type of element contained by the collection. + More than one element satisfies the condition in . + The element if it satisfies the specified condition; otherwise the default element. + + + Copies the contents of this array to a mutable array. + The immutable array to copy into a mutable one. + The type of element contained by the collection. + The newly instantiated array. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Creates a dictionary based on the contents of this array. + The array to create a dictionary from. + The key selector. + The element selector. + The comparer to initialize the dictionary with. + The type of the key. + The type of the element. + The type of element contained by the collection. + The newly initialized dictionary. + + + Filters a sequence of values based on a predicate. + The array to filter. + The condition to use for filtering the array content. + The type of element contained by the collection. + Returns that contains elements that meet the condition. + + + An unsafe class that provides a set of methods to access the underlying data representations of immutable collections. + + + Gets the underlying array for an input value. + The input value to get the underlying array from. + The type of elements in the input value. + The underlying array for , if present. + + + Gets an value wrapping the input array. + The input array to wrap in the returned value. + The type of elements in the input array. + An value wrapping . + + + \ No newline at end of file diff --git a/packages/System.Collections.Immutable.8.0.0/useSharedDesignerContext.txt b/packages/System.Collections.Immutable.8.0.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/.signature.p7s b/packages/System.Diagnostics.DiagnosticSource.8.0.0/.signature.p7s new file mode 100644 index 0000000..75a0dc6 Binary files /dev/null and b/packages/System.Diagnostics.DiagnosticSource.8.0.0/.signature.p7s differ diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/Icon.png b/packages/System.Diagnostics.DiagnosticSource.8.0.0/Icon.png new file mode 100644 index 0000000..a0f1fdb Binary files /dev/null and b/packages/System.Diagnostics.DiagnosticSource.8.0.0/Icon.png differ diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/LICENSE.TXT b/packages/System.Diagnostics.DiagnosticSource.8.0.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/System.Diagnostics.DiagnosticSource.8.0.0.nupkg b/packages/System.Diagnostics.DiagnosticSource.8.0.0/System.Diagnostics.DiagnosticSource.8.0.0.nupkg new file mode 100644 index 0000000..d4063f9 Binary files /dev/null and b/packages/System.Diagnostics.DiagnosticSource.8.0.0/System.Diagnostics.DiagnosticSource.8.0.0.nupkg differ diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/THIRD-PARTY-NOTICES.TXT b/packages/System.Diagnostics.DiagnosticSource.8.0.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..4b40333 --- /dev/null +++ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,1272 @@ +.NET Runtime uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Runtime software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +https://www.unicode.org/license.html + +Copyright © 1991-2022 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +https://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.13, October 13th, 2022 + + Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR +COPYRIGHT HOLDERS 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. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for vectorized hex parsing +-------------------------------------------------------- + +Copyright (c) 2022, Geoff Langdale +Copyright (c) 2022, Wojciech Mula +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for RFC 3492 +--------------------------- + +The punycode implementation is based on the sample code in RFC 3492 + +Copyright (C) The Internet Society (2003). All Rights Reserved. + +This document and translations of it may be copied and furnished to +others, and derivative works that comment on or otherwise explain it +or assist in its implementation may be prepared, copied, published +and distributed, in whole or in part, without restriction of any +kind, provided that the above copyright notice and this paragraph are +included on all such copies and derivative works. However, this +document itself may not be modified in any way, such as by removing +the copyright notice or references to the Internet Society or other +Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for +copyrights defined in the Internet Standards process must be +followed, or as required to translate it into languages other than +English. + +The limited permissions granted above are perpetual and will not be +revoked by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an +"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Copyright(C) The Internet Society 1997. All Rights Reserved. + +This document and translations of it may be copied and furnished to others, +and derivative works that comment on or otherwise explain it or assist in +its implementation may be prepared, copied, published and distributed, in +whole or in part, without restriction of any kind, provided that the above +copyright notice and this paragraph are included on all such copies and +derivative works.However, this document itself may not be modified in any +way, such as by removing the copyright notice or references to the Internet +Society or other Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for copyrights +defined in the Internet Standards process must be followed, or as required +to translate it into languages other than English. + +The limited permissions granted above are perpetual and will not be revoked +by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an "AS IS" +basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE +DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO +ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY +RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A +PARTICULAR PURPOSE. + +License notice for Algorithm from RFC 4122 - +A Universally Unique IDentifier (UUID) URN Namespace +---------------------------------------------------- + +Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. +Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & +Digital Equipment Corporation, Maynard, Mass. +Copyright (c) 1998 Microsoft. +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: permission to use, copy, +modify, and distribute this file for any purpose is hereby +granted without fee, provided that the above copyright notices and +this notice appears in all source code copies, and that none of +the names of Open Software Foundation, Inc., Hewlett-Packard +Company, Microsoft, or Digital Equipment Corporation be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Neither Open Software +Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital +Equipment Corporation makes any representations about the +suitability of this software for any purpose." + +License notice for The LLVM Compiler Infrastructure (Legacy License) +-------------------------------------------------------------------- + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +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 +CONTRIBUTORS OR COPYRIGHT HOLDERS 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 WITH THE +SOFTWARE. + +License notice for Bob Jenkins +------------------------------ + +By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this +code any way you wish, private, educational, or commercial. It's free. + +License notice for Greg Parker +------------------------------ + +Greg Parker gparker@cs.stanford.edu December 2000 +This code is in the public domain and may be copied or modified without +permission. + +License notice for libunwind based code +---------------------------------------- + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for Printing Floating-Point Numbers (Dragon4) +------------------------------------------------------------ + +/****************************************************************************** + Copyright (c) 2014 Ryan Juckett + http://www.ryanjuckett.com/ + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source + distribution. +******************************************************************************/ + +License notice for Printing Floating-point Numbers (Grisu3) +----------------------------------------------------------- + +Copyright 2012 the V8 project authors. All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xxHash +------------------------- + +xxHash - Extremely Fast Hash algorithm +Header File +Copyright (C) 2012-2021 Yann Collet + +BSD 2-Clause License (https://www.opensource.org/licenses/bsd-license.php) + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +You can contact the author at: + - xxHash homepage: https://www.xxhash.com + - xxHash source repository: https://github.com/Cyan4973/xxHash + +License notice for Berkeley SoftFloat Release 3e +------------------------------------------------ + +https://github.com/ucb-bar/berkeley-softfloat-3 +https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt + +License for Berkeley SoftFloat Release 3e + +John R. Hauser +2018 January 20 + +The following applies to the whole of SoftFloat Release 3e as well as to +each source file individually. + +Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the +University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions, and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE +DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xoshiro RNGs +-------------------------------- + +Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org) + +To the extent possible under law, the author has dedicated all copyright +and related and neighboring rights to this software to the public domain +worldwide. This software is distributed without any warranty. + +See . + +License for fastmod (https://github.com/lemire/fastmod), ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data) and fastrange (https://github.com/lemire/fastrange) +-------------------------------------- + + Copyright 2018 Daniel Lemire + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +License for sse4-strstr (https://github.com/WojciechMula/sse4-strstr) +-------------------------------------- + + Copyright (c) 2008-2016, Wojciech Mula + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for The C++ REST SDK +----------------------------------- + +C++ REST SDK + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for MessagePack-CSharp +------------------------------------- + +MessagePack for C# + +MIT License + +Copyright (c) 2017 Yoshifumi Kawai + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for lz4net +------------------------------------- + +lz4net + +Copyright (c) 2013-2017, Milosz Krajewski + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Nerdbank.Streams +----------------------------------- + +The MIT License (MIT) + +Copyright (c) Andrew Arnott + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for RapidJSON +---------------------------- + +Tencent is pleased to support the open source community by making RapidJSON available. + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. + +Licensed under the MIT License (the "License"); you may not use this file except +in compliance with the License. You may obtain a copy of the License at + +http://opensource.org/licenses/MIT + +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. + +License notice for DirectX Math Library +--------------------------------------- + +https://github.com/microsoft/DirectXMath/blob/master/LICENSE + + The MIT License (MIT) + +Copyright (c) 2011-2020 Microsoft Corp + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +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 OR COPYRIGHT +HOLDERS 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. + +License notice for ldap4net +--------------------------- + +The MIT License (MIT) + +Copyright (c) 2018 Alexander Chermyanin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for vectorized sorting code +------------------------------------------ + +MIT License + +Copyright (c) 2020 Dan Shechter + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for musl +----------------------- + +musl as a whole is licensed under the following standard MIT license: + +Copyright © 2005-2020 Rich Felker, et al. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + + +License notice for "Faster Unsigned Division by Constants" +------------------------------ + +Reference implementations of computing and using the "magic number" approach to dividing +by constants, including codegen instructions. The unsigned division incorporates the +"round down" optimization per ridiculous_fish. + +This is free and unencumbered software. Any copyright is dedicated to the Public Domain. + + +License notice for mimalloc +----------------------------------- + +MIT License + +Copyright (c) 2019 Microsoft Corporation, Daan Leijen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for The LLVM Project +----------------------------------- + +Copyright 2019 LLVM Project + +Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions; +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +https://llvm.org/LICENSE.txt + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +License notice for Apple header files +------------------------------------- + +Copyright (c) 1980, 1986, 1993 + The Regents of the University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. +4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +License notice for JavaScript queues +------------------------------------- + +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. + +Statement of Purpose +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: +the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; +moral rights retained by the original author(s) and/or performer(s); +publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; +rights protecting the extraction, dissemination, use and reuse of data in a Work; +database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and +other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. +4. Limitations and Disclaimers. +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. + + +License notice for FastFloat algorithm +------------------------------------- +MIT License +Copyright (c) 2021 csFastFloat authors +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License notice for MsQuic +-------------------------------------- + +Copyright (c) Microsoft Corporation. +Licensed under the MIT License. + +Available at +https://github.com/microsoft/msquic/blob/main/LICENSE + +License notice for m-ou-se/floatconv +------------------------------- + +Copyright (c) 2020 Mara Bos +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for code from The Practice of Programming +------------------------------- + +Copyright (C) 1999 Lucent Technologies + +Excerpted from 'The Practice of Programming +by Brian W. Kernighan and Rob Pike + +You may use this code for any purpose, as long as you leave the copyright notice and book citation attached. + +Notice for Euclidean Affine Functions and Applications to Calendar +Algorithms +------------------------------- + +Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar +Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf + +License notice for amd/aocl-libm-ose +------------------------------- + +Copyright (C) 2008-2020 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +License notice for fmtlib/fmt +------------------------------- + +Formatting library for C++ + +Copyright (c) 2012 - present, Victor Zverovich + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License for Jb Evain +--------------------- + +Copyright (c) 2006 Jb Evain (jbevain@gmail.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +License for MurmurHash3 +-------------------------------------- + +https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp + +MurmurHash3 was written by Austin Appleby, and is placed in the public +domain. The author hereby disclaims copyright to this source + +License for Fast CRC Computation +-------------------------------------- + +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc32_ieee_by4.asm +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc64_ecma_norm_by8.asm + +Copyright(c) 2011-2015 Intel Corporation All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License for C# Implementation of Fast CRC Computation +----------------------------------------------------- + +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/src/ImageSharp/Formats/Png/Zlib/Crc32.cs + +Copyright (c) Six Labors. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/LICENSE diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets b/packages/System.Diagnostics.DiagnosticSource.8.0.0/buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets new file mode 100644 index 0000000..266cc94 --- /dev/null +++ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/buildTransitive/net462/_._ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/buildTransitive/net462/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/buildTransitive/net6.0/_._ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/buildTransitive/net6.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets b/packages/System.Diagnostics.DiagnosticSource.8.0.0/buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets new file mode 100644 index 0000000..6e4da9f --- /dev/null +++ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net462/System.Diagnostics.DiagnosticSource.dll b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net462/System.Diagnostics.DiagnosticSource.dll new file mode 100644 index 0000000..354f5f5 Binary files /dev/null and b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net462/System.Diagnostics.DiagnosticSource.dll differ diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net462/System.Diagnostics.DiagnosticSource.xml b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net462/System.Diagnostics.DiagnosticSource.xml new file mode 100644 index 0000000..d94e6d2 --- /dev/null +++ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net462/System.Diagnostics.DiagnosticSource.xml @@ -0,0 +1,1886 @@ + + + + System.Diagnostics.DiagnosticSource + + + + Represents an operation with context to be used for logging. + + + Occurs when the value changes. + + + Initializes a new instance of the class. + The name of the operation. + + + Updates the to have a new baggage item with the specified key and value. + The baggage key. + The baggage value. + + for convenient chaining. + + + Adds the specified activity event to the events list. + The activity event to add. + + for convenient chaining. + + + Updates the activity to have a tag with an additional and . + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Updates the to have a new tag with the provided and . + The tag key. + The tag value. + + for convenient chaining. + + + Stops the activity if it is already started and notifies any event listeners. Nothing will happen otherwise. + + + When overriden by a derived type, this method releases any allocated resources. + + if the method is being called from the finalizer; if calling from user code. + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the tags attached to this Activity object. + + . + + + Returns the value of a key-value pair added to the activity with . + The baggage key. + The value of the key-value-pair item if it exists, or if it does not exist. + + + Returns the object mapped to the specified property name. + The name associated to the object. + The object mapped to the property name, if one is found; otherwise, . + + + Returns the value of the Activity tag mapped to the input key/>. + Returns if that key does not exist. + The tag key string. + The tag value mapped to the input key. + + + Add or update the Activity baggage with the input key and value. + If the input value is - if the collection has any baggage with the same key, then this baggage will get removed from the collection. + - otherwise, nothing will happen and the collection will not change. + If the input value is not - if the collection has any baggage with the same key, then the value mapped to this key will get updated with the new input value. + - otherwise, the key and value will get added as a new baggage to the collection. + Baggage item will be updated/removed only if it was originaly added to the current activity. Items inherited from the parents will not be changed/removed, new item would be added to current activity baggage instead. + The baggage key name + The baggage value mapped to the input key + + for convenient chaining. + + + Attaches any custom object to this activity. If the specified was previously associated with another object, the property will be updated to be associated with the new instead. It is recommended to use a unique property name to avoid conflicts with anyone using the same value. + The name to associate the value with. + The object to attach and map to the property name. + + + Updates the to set its as the difference between and the specified stop time. + The UTC stop time. + + for convenient chaining. + + + Sets the ID format on this before it is started. + One of the enumeration values that specifies the format of the property. + + for convenient chaining. + + + Sets the parent ID using the W3C convention of a TraceId and a SpanId. + The parent activity's TraceId. + The parent activity's SpanId. + One of the enumeration values that specifies flags defined by the W3C standard that are associated with an activity. + + for convenient chaining. + + + Updates this to indicate that the with an ID of caused this . + The ID of the parent operation. + + for convenient chaining. + + + Sets the start time of this . + The start time in UTC. + + for convenient chaining. + + + Sets the status code and description on the current activity object. + The status code + The error status description + + for convenient chaining. + + + Adds or update the activity tag with the input key and value. + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Starts the activity. + + for convenient chaining. + + + Stops the activity. + + + Gets or sets the flags (defined by the W3C ID specification) associated with the activity. + the flags associated with the activity. + + + Gets a collection of key/value pairs that represents information that is passed to children of this . + Information that's passed to children of this . + + + Gets the context of the activity. Context becomes valid only if the activity has been started. + The context of the activity, if the activity has been started; otherwise, returns the default context. + + + Gets or sets the current operation () for the current thread. This flows across async calls. + The current operation for the current thread. + + + Gets or sets the default ID format for the . + + + Gets or sets the display name of the activity. + A string that represents the activity display name. + + + Gets the duration of the operation. + The delta between and the end time if the has ended ( or was called), or if the has not ended and was not called. + + + Gets the list of all the activity events attached to this activity. + An enumeration of activity events attached to this activity. If the activity has no events, returns an empty enumeration. + + + Gets or sets a value that detrmines if the is always used to define the default ID format. + + to always use the ; otherwise, . + + + Gets a value that indicates whether the parent context was created from remote propagation. + + + Gets an identifier that is specific to a particular request. + The activity ID. + + + Gets the format for the . + The format for the . + + + Gets or sets a value that indicates whether this activity should be populated with all the propagation information, as well as all the other properties, such as links, tags, and events. + + if the activity should be populated; otherwise. + + + Gets a value that indicates whether this object is stopped or not. + + + Gets the relationship between the activity, its parents, and its children in a trace. + One of the enumeration values that indicate relationship between the activity, its parents, and its children in a trace. + + + Gets the list of all the activity links attached to this activity. + An enumeration of activity links attached to this activity. If the activity has no links, returns an empty enumeration. + + + Gets the operation name. + The name of the operation. + + + Gets the parent that created this activity. + The parent of this , if it is from the same process, or if this instance has no parent (it is a root activity) or if the parent is from outside the process. + + + Gets the ID of this activity's parent. + The parent ID, if one exists, or if it does not. + + + Gets the parent's . + The parent's . + + + Gets a value that indicates whether the W3CIdFlags.Recorded flag is set. + + if the W3CIdFlags.Recorded flag is set; otherwise, . + + + Gets the root ID of this . + The root ID, or if the current instance has either a or an . + + + Gets the activity source associated with this activity. + + + Gets the SPAN part of the . + The ID for the SPAN part of , if the has the W3C format; otherwise, a zero . + + + Gets the time when the operation started. + The UTC time that the operation started. + + + Gets status code of the current activity object. + + + Gets the status description of the current activity object. + + + Gets the list of tags that represent information to log along with the activity. This information is not passed on to the children of this activity. + A key-value pair enumeration of tags and objects. + + + Gets a collection of key/value pairs that represent information that will be logged along with the to the logging system. + Information that will be logged along with the to the logging system. + + + Gets the TraceId part of the . + The ID for the TraceId part of the , if the ID has the W3C format; otherwise, a zero TraceId. + + + When starting an Activity which does not have a parent context, the Trace Id will automatically be generated using random numbers. + TraceIdGenerator can be used to override the runtime's default Trace Id generation algorithm. + + + Gets or sets the W3C header. + The W3C header. + + + Enumerates the data stored on an object. + Type being enumerated. + + + Returns an enumerator that iterates through the data stored on an Activity object. + + . + + + Advances the enumerator to the next element of the data. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Gets the element at the current position of the enumerator. + + + Provides data for the event. + + + Gets the object after the event. + + + Gets the object before the event. + + + A representation that conforms to the W3C TraceContext specification. It contains two identifiers: a TraceId and a SpanId, along with a set of common TraceFlags and system-specific TraceState values. + + + Construct a new activity context instance using the specified arguments. + A trace identifier. + A span identifier. + Contain details about the trace. + Carries system-specific configuration data. + Indicates if the context is propagated from a remote parent. + + + Indicates whether the current object is equal to another object of the same type. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Determines whether this instance and a specified object have the same value. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Parses a W3C trace context headers to an object. + The W3C trace parent header. + The trace state. + The trace parent is invalid. + The object created from the parsing operation. + + + Tries to parse the W3C trace context headers to the object. + The W3C trace parent header. + The W3C trace state. + + to propagate the context from the remote parent; otherwise, . + When this method returns, contains the object created from the parsing operation. + + if the operation succeeds; otherwise. + + + Tries to parse the W3C trace context headers to an object. + The W3C trace parent header. + The W3C trace state. + When this method returns , the object created from the parsing operation. + + if the parsing was successful; otherwise. + + + Indicates if the activity context was propagated from a remote parent. + + if it was propagated from a remote parent; otherwise. + + + The Id of the request as known by the caller. + The Span Id in the context. + + + The flags defined by the W3C standard along with the ID for the activity. + The context tracing flags. + + + The trace identifier. + The tracing identifier in the context. + + + Holds the W3C 'tracestate' header. + A string representing the W3C 'tracestate' header. + + + Encapsulates all the information that is sent to the activity listener, to make decisions about the creation of the activity instance, as well as its state. + +The possible generic type parameters are or . + The type of the property. Should be either or . + + + Gets the activity kind which the activity will be created with. + One of the enumeration values that represent an activity kind. + + + Gets the enumeration of activity links that the activity will be created with. + An enumeration of activity links. + + + Gets the name to use as OperationName of the activity that will get created. + A string representing the activity name. + + + Gets the parent context or parent Id that the activity will get created with. + The parent of the activity, represented either as a or as an . + + + Gets the collection that is used to add more tags during the sampling process. The added tags are also added to the created Activity if it is decided that it should be created by the callbacks. + The Activity tags collection. + + + Gets the activity source that creates the activity. + An activity source object. + + + Gets the tags that the activity will be created with. + A key-value pair enumeration of tags associated with the activity. + + + Gets the trace Id to use in the Activity object if it is decided that it should be created by callbacks. + The trace Id. + + + Gets or initializes the trace state to use when creating the Activity. + + + Represents an event containing a name and a timestamp, as well as an optional list of tags. + + + Initializes a new activity event instance using the specified name and the current time as the event timestamp. + The event name. + + + Initializes a new activity event instance using the specified name, timestamp and tags. + The event name. + The event timestamp. Timestamp must only be used for the events that happened in the past, not at the moment of this call. + The event tags. + + + Enumerate the tags attached to this object. + + . + + + Gets the activity event name. + A string representing the activity event name. + + + Gets the collection of tags associated with the event. + A key-value pair enumeration containing the tags associated with the event. + + + Gets the activity event timestamp. + A datetime offset representing the activity event timestamp. + + + Specifies the format of the property. + + + The hierarchical format. + + + An unknown format. + + + The W3C format. + + + Describes the relationship between the activity, its parents and its children in a trace. + + + Outgoing request to the external component. + + + Output received from an external component. + + + Internal operation within an application, as opposed to operations with remote parents or children. This is the default value. + + + Output provided to external components. + + + Requests incoming from external component. + + + Activities may be linked to zero or more activity context instances that are causally related. + +Activity links can point to activity contexts inside a single trace or across different traces. + +Activity links can be used to represent batched operations where an activity was initiated by multiple initiating activities, each representing a single incoming item being processed in the batch. + + + Constructs a new activity link, which can be linked to an activity. + The trace activity context. + The key-value pair list of tags associated to the activity context. + + + Enumerate the tags attached to this object. + + . + + + Indicates whether the current activity link is equal to another activity link. + The activity link to compare. + + if the current activity link is equal to ; otherwise, . + + + Indicates whether the current activity link is equal to another object. + The object to compare. + + if the current activity link is equal to ; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Retrieves the activity context inside this activity link. + + + Retrieves the key-value pair enumeration of tags attached to the activity context. + An enumeration of tags attached to the activity context. + + + Allows listening to the start and stop activity events and gives the opportunity to decide creating an activity for sampling scenarios. + + + Construct a new activity listener object to start listeneing to the activity events. + + + Unregisters this activity listener object from listening to activity events. + + + Gets or sets the callback used to listen to the activity start event. + An activity callback instance used to listen to the activity start event. + + + Gets or sets the callback used to listen to the activity stop event. + An activity callback instance used to listen to the activity stop event. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that allows deciding if activity object events that were created using the activity source object should be listened or not. + + to listen events; otherwise. + + + Enumeration values used by to indicate the amount of data to collect for the related . Requesting more data causes a greater performance overhead. + + + The activity object should be populated with all the propagation information and also all other properties such as Links, Tags, and Events. Using this value causes to return . + + + The activity object should be populated the same as the case. Additionally, Activity.Recorded is set to . For activities using the W3C trace ids, this sets a flag bit in the ID that will be propagated downstream requesting that the trace is recorded everywhere. + + + The activity object does not need to be created. + + + The activity object needs to be created. It will have a Name, a Source, an Id and Baggage. Other properties are unnecessary and will be ignored by this listener. + + + Provides APIs to create and start objects and to register objects to listen to the events. + + + Constructs an activity source object with the specified . + The name of the activity source object. + The version of the component publishing the tracing info. + + + Adds a listener to the activity starting and stopping events. + The activity listener object to use for listening to the activity events. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity + The + The created object or if there is no any event listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + If the Activity object is created, it will not automatically start. Callers will need to call to start it. + The operation name of the Activity. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity. + The + The parent Id to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Disposes the activity source object, removes the current instance from the global list, and empties the listeners list. + + + Checks if there are any listeners for this activity source. + + if there is a listener registered for this activity source; otherwise, . + + + Creates and starts a new object if there is any listener to the Activity events, returns otherwise. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The optional start timestamp to set on the created Activity object. + The operation name of the Activity. + The created object or if there is no any listener. + + + Creates a new activity if there are active listeners for it, using the specified name and activity kind. + The operation name of the activity. + The activity kind. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent activity context, tags, optional activity link and optional start time. + The operation name of the activity. + The activity kind. + The parent object to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent Id, tags, optional activity links and optional start time. + The operation name of the activity. + The activity kind. + The parent Id to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Returns the activity source name. + A string that represents the activity source name. + + + Returns the activity source version. + A string that represents the activity source version. + + + Represents a formatted based on a W3C standard. + + + Copies the 8 bytes of the current to a specified span. + The span to which the 8 bytes of the SpanID are to be copied. + + + Creates a new value from a read-only span of eight bytes. + A read-only span of eight bytes. + + does not contain eight bytes. + The new span ID. + + + Creates a new value from a read-only span of 16 hexadecimal characters. + A span that contains 16 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new span ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new span ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new span ID. + + + Determines whether this instance and the specified instance have the same value. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + the current instance and a specified object, which also must be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the SpanId. + The hash code of the SpanId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the SpanId of is the same as the SpanId of ; otherwise, . + + + Determine whether two specified instances have unequal values. + The first instance to compare. + The second instance to compare. + + if the SpanId of is different from the SpanId of ; otherwise, . + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Define the status code of the Activity which indicate the status of the instrumented operation. + + + Status code indicating an error is encountered during the operation. + + + Status code indicating the operation has been validated and completed successfully. + + + Unset status code is the default value indicating the status code is not initialized. + + + ActivityTagsCollection is a collection class used to store tracing tags. + +This collection will be used with classes like and . + +This collection behaves as follows: +- The collection items will be ordered according to how they are added. +- Don't allow duplication of items with the same key. +- When using the indexer to store an item in the collection: + - If the item has a key that previously existed in the collection and the value is , the collection item matching the key will be removed from the collection. + - If the item has a key that previously existed in the collection and the value is not , the new item value will replace the old value stored in the collection. + - Otherwise, the item will be added to the collection. +- Add method will add a new item to the collection if an item doesn't already exist with the same key. Otherwise, it will throw an exception. + + + Create a new instance of the collection. + + + Create a new instance of the collection and store the input list items in the collection. + Initial list to store in the collection. + + + Adds an item to the collection. + Key and value pair of the tag to add to the collection. + + already exists in the list. + + is . + + + Adds a tag with the provided key and value to the collection. This collection doesn't allow adding two tags with the same key. + The tag key. + The tag value. + + + Removes all items from the collection. + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Determines whether the collection contains an element with the specified key. + The key to locate in the . + + if the collection contains tag with that key. otherwise. + + + Copies the elements of the collection to an array, starting at a particular array index. + The array that is the destination of the elements copied from collection. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator for the . + + + Removes the first occurrence of a specific item from the collection. + The tag key value pair to remove. + + if item was successfully removed from the collection; otherwise, . This method also returns if item is not found in the original collection. + + + Removes the tag with the specified key from the collection. + The tag key. + + if the item existed and removed. otherwise. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through the collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The tag key. + The tag value. + When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized. + + + Gets the number of elements contained in the collection. + The number of elements contained in the . + + + Gets a value indicating whether the collection is read-only. This always returns . + Always returns . + + + Gets or sets a specified collection item. + + When setting a value to this indexer property, the following behavior is observed: +- If the key previously existed in the collection and the value is , the collection item matching the key will get removed from the collection. +- If the key previously existed in the collection and the value is not , the value will replace the old value stored in the collection. +- Otherwise, a new item will get added to the collection. + The key of the value to get or set. + The object mapped to the key. + + + Get the list of the keys of all stored tags. + An containing the keys of the object that implements . + + + Get the list of the values of all stored tags. + An containing the values in the object that implements . + + + Enumerates the elements of an . + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Specifies flags defined by the W3C standard that are associated with an activity. + + + The activity has not been marked. + + + The activity (or more likely its parents) has been marked as useful to record. + + + Represents a whose format is based on a W3C standard. + + + Copies the 16 bytes of the current to a specified span. + The span to which the 16 bytes of the trace ID are to be copied. + + + Creates a new value from a read-only span of 16 bytes. + A read-only span of 16 bytes. + + does not contain eight bytes. + The new trace ID. + + + Creates a new value from a read-only span of 32 hexadecimal characters. + A span that contains 32 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new trace ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new trace ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new . + + + Determines whether the current instance and a specified are equal. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + Determines whether this instance and a specified object, which must also be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the TraceId. + The hash code of the TraceId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is the same as the TraceId of ; otherwise, . + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is different from the TraceId of ; otherwise, . + + + Returns a 32-character hexadecimal string that represents this span ID. + The 32-character hexadecimal string representation of this trace ID. + + + Returns a 32-character hexadecimal string that represents this trace ID. + The 32-character hexadecimal string representation of this trace ID. + + + Provides an implementation of the abstract class that represents a named place to which a source sends its information (events). + + + Creates a new . + The name of this . + + + Disposes the NotificationListeners. + + + Determines whether there are any registered subscribers. + + if there are any registered subscribers, otherwise. + + + Checks whether the is enabled. + The name of the event to check. + + if notifications are enabled; otherwise, . + + + Checks if any subscriber to the diagnostic events is interested in receiving events with this name. Subscribers indicate their interest using a delegate provided in . + The name of the event to check. + The object that represents a context. + The object that represents a context. + + if it is enabled, otherwise. + + + Invokes the OnActivityExport method of all the subscribers. + The activity affected by an external event. + An object that represents the outgoing request. + + + Invokes the OnActivityImport method of all the subscribers. + The activity affected by an external event. + An object that represents the incoming request. + + + Adds a subscriber. + A subscriber. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name and up to two context objects. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or to if an event filter is not desirable. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, optionally filters events based on their name and up to two context objects, and specifies methods to call when providers import or export activites from outside the process. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or if an event filter is not desirable. + An action delegate that receives the activity affected by an external event and an object that represents the incoming request. + An action delegate that receives the activity affected by an external event and an object that represents the outgoing request. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name. + A subscriber. + A delegate that filters events based on their name (). The delegate should return if the event is enabled. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Returns a string with the name of this DiagnosticListener. + The name of this DiagnosticListener. + + + Logs a notification. + The name of the event to log. + An object that represents the payload for the event. + + + Gets the collection of listeners for this . + + + Gets the name of this . + The name of the . + + + An abstract class that allows code to be instrumented for production-time logging of rich data payloads for consumption within the process that was instrumented. + + + Initializes an instance of the class. + + + Verifies if the notification event is enabled. + The name of the event being written. + + if the notification event is enabled, otherwise. + + + Verifies it the notification event is enabled. + The name of the event being written. + An object that represents the additional context for IsEnabled. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) to check if consumer wants to get notifications for such events at all. Based on that, producer may call IsEnabled(string, object, object) again with non- context. + Optional. An object that represents the additional context for IsEnabled. by default. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) or producer passed all necessary context in . + + if the notification event is enabled, otherwise. + + + Transfers state from an activity to some event or operation, such as an outgoing HTTP request, that will occur outside the process. + The activity affected by an external event. + An object that represents the outgoing request. + + + Transfers state to an activity from some event or operation, such as an incoming request, that occurred outside the process. + The activity affected by an external event. + A payload that represents the incoming request. + + + Starts an and writes a start event. + The to be started. + An object that represent the value being passed as a payload for the event. + The started activity for convenient chaining. + + + + + + + + Stops the given , maintains the global activity, and notifies consumers that the was stopped. + The activity to be stopped. + An object that represents the value passed as a payload for the event. + + + + + + + + Provides a generic way of logging complex payloads. + The name of the event being written. + An object that represents the value being passed as a payload for the event. This is often an anonymous type which contains several sub-values. + + + + + + + + An implementation of determines if and how distributed context information is encoded and decoded as it traverses the network. + The encoding can be transported over any network protocol that supports string key-value pairs. For example, when using HTTP, each key-value pair is an HTTP header. + injects values into and extracts values from carriers as string key-value pairs. + + + Initializes an instance of the class. This constructor is protected and only meant to be called from parent classes. + + + Returns the default propagator object that will be initialized with. + An instance of the class. + + + Returns a propagator that does not transmit any distributed context information in outbound network messages. + An instance of the class. + + + Returns a propagator that attempts to act transparently, emitting the same data on outbound network requests that was received on the inbound request. + When encoding the outbound message, this propagator uses information from the request's root Activity, ignoring any intermediate Activities that may have been created while processing the request. + An instance of the class. + + + Extracts the baggage key-value pair list from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation baggage list from the carrier. + Returns the extracted key-value pair list from the carrier. + + + Extracts the trace ID and trace state from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation trace ID and state from the carrier. + When this method returns, contains the trace ID extracted from the carrier. + When this method returns, contains the trace state extracted from the carrier. + + + Injects the trace values stored in the object into a carrier. For example, into the headers of an HTTP request. + The Activity object has the distributed context to inject to the carrier. + The medium in which the distributed context will be stored. + The callback method to invoke to set a named key-value pair on the carrier. + + + Get or set the process-wide propagator object to use as the current selected propagator. + The currently selected process-wide propagator object. + + + Gets the set of field names this propagator is likely to read or write. + The list of fields that will be used by the DistributedContextPropagator. + + + Represents the callback method that's used in the extract methods of propagators. The callback is invoked to look up the value of a named field. + The medium used by propagators to read values from. + The propagation field name. + When this method returns, contains the value that corresponds to . The value is non- if there is only one value for the input field name. + When this method returns, contains a collection of values that correspond to . The value is non- if there is more than one value for the input field name. + + + Represents the callback method that's used in propagators' inject methods. This callback is invoked to set the value of a named field. + Propagators may invoke it multiple times in order to set multiple fields. + The medium used by propagators to write values to. + The propagation field name. + The value corresponding to . + + + Represents an instrument that supports adding non-negative values. For example, you might call counter.Add(1) each time a request is processed to track the total number of requests. Most metric viewers display counters using a rate (requests/sec), by default, but can also display a cumulative total. + The type that the counter represents. + + + Records the increment value of the measurement. + The increment measurement. + + + Records the increment value of the measurement. + The increment measurement. + A key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A list of key-value pair tags associated with the measurement. + + + Adds the increment value of the measurement. + The measurement value. + The tags associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A span of key-value pair tags associated with the measurement. + + + Represents a metrics instrument that can be used to report arbitrary values that are likely to be statistically meaningful, for example, the request duration. Call to create a Histogram object. + The type that the histogram represents. + + + Records a measurement value. + The measurement value. + + + Records a measurement value. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A list of key-value pair tags associated with the measurement. + + + Records a measurement value. + The measurement value. + The tags associated with the measurement. + + + Records a measurement value. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + + + + + Base class of all metrics instrument classes + + + Protected constructor to initialize the common instrument properties like the meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Activates the instrument to start recording measurements and to allow listeners to start listening to such measurements. + + + Gets the instrument description. + + + Gets a value that indicates if there are any listeners for this instrument. + + + Gets a value that indicates whether the instrument is an observable instrument. + + + Gets the Meter that created the instrument. + + + Gets the instrument name. + + + + Gets the instrument unit of measurements. + + + The base class for all non-observable instruments. + The type that the instrument represents. + + + Create the metrics instrument using the properties meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + The tags associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + Stores one observed metrics value and its associated tags. This type is used by an Observable instrument's Observe() method when reporting current measurements. + The type that the measurement represents. + + + Initializes a new instance of using the specified value. + The measurement value. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Gets the measurement tags list. + + + Gets the measurement value. + + + A delegate to represent the Meterlistener callbacks that are used when recording measurements. + The instrument that sent the measurement. + The measurement value. + A span of key-value pair tags associated with the measurement. + The state object originally passed to method. + The type that the measurement represents. + + + Meter is the class responsible for creating and tracking the Instruments. + + + + + + Initializes a new instance of using the specified meter name. + The Meter name. + + + Initializes a new instance of using the specified meter name and version. + The Meter name. + The optional Meter version. + + + + + + + + + Create a metrics Counter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new counter. + + + + + + + + + + Creates a Histogram, which is an instrument that can be used to report arbitrary values that are likely to be statistically meaningful. It is intended for statistics such as histograms, summaries, and percentiles. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new histogram. + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement.. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Create a metrics UpDownCounter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new up down counter. + + + + + + + + + + Dispose the Meter which will disable all instruments created by this meter. + + + + + + Gets the Meter name. + The Meter name + + + + + Gets the Meter version. + The Meter version. + + + + + + + + + + The MeterListener is class used to listen to the metrics instrument measurements recording. + + + Initializes a new instance of the class. + + + Stops listening to a specific instrument measurement recording. + The instrument to stop listening to. + The state object originally passed to method. + + + Disposes the listeners which will stop it from listening to any instrument. + + + Starts listening to a specific instrument measurement recording. + The instrument to listen to. + A state object that will be passed back to the callback getting measurements events. + + + Calls all Observable instruments that the listener is listening to, and calls with every collected measurement. + + + Sets a callback for a specific numeric type to get the measurement recording notification from all instruments which enabled listening and was created with the same specified numeric type. + If a measurement of type T is recorded and a callback of type T is registered, that callback will be used. + The callback which can be used to get measurement recording of numeric type T. + The type of the numeric measurement. + + + Enables the listener to start listening to instruments measurement recording. + + + Gets or sets the callback to get notified when an instrument is published. + The callback to get notified when an instrument is published. + + + Gets or sets the callback to get notified when the measurement is stopped on some instrument. + This can happen when the Meter or the Listener is disposed or calling on the listener. + The callback to get notified when the measurement is stopped on some instrument. + + + + + + + + + + + Represents a metrics-observable instrument that reports monotonically increasing values when the instrument is being observed, for example, CPU time (for different processes, threads, user mode, or kernel mode). Call to create the observable counter object. + The type that the observable counter represents. + + + Represents an observable instrument that reports non-additive values when the instrument is being observed, for example, the current room temperature. Call to create the observable counter object. + + + + ObservableInstrument{T} is the base class from which all metrics observable instruments will inherit. + The type that the observable instrument represents. + + + Initializes a new instance of the class using the specified meter, name, description, and unit. + All classes that extend ObservableInstrument{T} must call this constructor when constructing objects of the extended class. + The meter that created the instrument. + The instrument name. cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Fetches the current measurements being tracked by this instrument. All classes extending ObservableInstrument{T} need to implement this method. + The current measurements tracked by this instrument. + + + Gets a value that indicates if the instrument is an observable instrument. + + if the instrument is metrics-observable; otherwise. + + + A metrics-observable instrument that reports increasing or decreasing values when the instrument is being observed. +Use this instrument to monitor the process heap size or the approximate number of items in a lock-free circular buffer, for example. +To create an ObservableUpDownCounter object, use the methods. + The type that the counter represents. + + + An instrument that supports reporting positive or negative metric values. + UpDownCounter may be used in scenarios like reporting the change in active requests or queue size. + The type that the UpDownCounter represents. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A list of key-value pair tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A of tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A span of key-value pair tags associated with the measurement. + + + A delegate that defines the signature of the callbacks used in the sampling process. + The Activity creation options used by callbacks to decide creating the Activity object or not. + The type of the requested parent to create the Activity object with. Should be either a string or an instance. + An object containing the sampling results, which indicate the amount of data to collect for the related . + + + Represents a list of tags that can be accessed by index. Provides methods to search, sort, and manipulate lists. + + + Initializes a new instance of using the specified . + A span of tags to initialize the list with. + + + Adds a tag to the list. + The key-value pair of the tag to add to the list. + + + Adds a tag with the specified and to the list. + The tag key. + The tag value. + + + Removes all elements from the . + + + Determines whether a tag is in the . + The tag to locate in the . + + if item is found in the ; otherwise, . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional Array that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0 or greater than or equal to the length. + + + Copies the contents of this into a destination span. + The destination object. + + The number of elements in the source is greater than the number of elements that the destination span. + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Searches for the specified tag and returns the zero-based index of the first occurrence within the entire . + The tag to locate in the . + The zero-based index of the first ocurrence of in the tag list. + + + Inserts an element into the at the specified index. + The zero-based index at which the item should be inserted. + The tag to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific object from the . + The tag to remove from the . + + if is successfully removed; otherwise, . This method also returns if was not found in the . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + index is less than 0 or is greater than . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Gets the number of tags contained in the . + The number of elements contained in the . + + + Gets a value indicating whether the is read-only. This property will always return . + + Always returns . + + + Gets or sets the tags at the specified index. + The item index. + + is not a valid index in the . + The element at the specified index. + + + An enumerator for traversing a tag list collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + \ No newline at end of file diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net6.0/System.Diagnostics.DiagnosticSource.dll b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net6.0/System.Diagnostics.DiagnosticSource.dll new file mode 100644 index 0000000..339e089 Binary files /dev/null and b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net6.0/System.Diagnostics.DiagnosticSource.dll differ diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net6.0/System.Diagnostics.DiagnosticSource.xml b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net6.0/System.Diagnostics.DiagnosticSource.xml new file mode 100644 index 0000000..d94e6d2 --- /dev/null +++ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net6.0/System.Diagnostics.DiagnosticSource.xml @@ -0,0 +1,1886 @@ + + + + System.Diagnostics.DiagnosticSource + + + + Represents an operation with context to be used for logging. + + + Occurs when the value changes. + + + Initializes a new instance of the class. + The name of the operation. + + + Updates the to have a new baggage item with the specified key and value. + The baggage key. + The baggage value. + + for convenient chaining. + + + Adds the specified activity event to the events list. + The activity event to add. + + for convenient chaining. + + + Updates the activity to have a tag with an additional and . + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Updates the to have a new tag with the provided and . + The tag key. + The tag value. + + for convenient chaining. + + + Stops the activity if it is already started and notifies any event listeners. Nothing will happen otherwise. + + + When overriden by a derived type, this method releases any allocated resources. + + if the method is being called from the finalizer; if calling from user code. + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the tags attached to this Activity object. + + . + + + Returns the value of a key-value pair added to the activity with . + The baggage key. + The value of the key-value-pair item if it exists, or if it does not exist. + + + Returns the object mapped to the specified property name. + The name associated to the object. + The object mapped to the property name, if one is found; otherwise, . + + + Returns the value of the Activity tag mapped to the input key/>. + Returns if that key does not exist. + The tag key string. + The tag value mapped to the input key. + + + Add or update the Activity baggage with the input key and value. + If the input value is - if the collection has any baggage with the same key, then this baggage will get removed from the collection. + - otherwise, nothing will happen and the collection will not change. + If the input value is not - if the collection has any baggage with the same key, then the value mapped to this key will get updated with the new input value. + - otherwise, the key and value will get added as a new baggage to the collection. + Baggage item will be updated/removed only if it was originaly added to the current activity. Items inherited from the parents will not be changed/removed, new item would be added to current activity baggage instead. + The baggage key name + The baggage value mapped to the input key + + for convenient chaining. + + + Attaches any custom object to this activity. If the specified was previously associated with another object, the property will be updated to be associated with the new instead. It is recommended to use a unique property name to avoid conflicts with anyone using the same value. + The name to associate the value with. + The object to attach and map to the property name. + + + Updates the to set its as the difference between and the specified stop time. + The UTC stop time. + + for convenient chaining. + + + Sets the ID format on this before it is started. + One of the enumeration values that specifies the format of the property. + + for convenient chaining. + + + Sets the parent ID using the W3C convention of a TraceId and a SpanId. + The parent activity's TraceId. + The parent activity's SpanId. + One of the enumeration values that specifies flags defined by the W3C standard that are associated with an activity. + + for convenient chaining. + + + Updates this to indicate that the with an ID of caused this . + The ID of the parent operation. + + for convenient chaining. + + + Sets the start time of this . + The start time in UTC. + + for convenient chaining. + + + Sets the status code and description on the current activity object. + The status code + The error status description + + for convenient chaining. + + + Adds or update the activity tag with the input key and value. + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Starts the activity. + + for convenient chaining. + + + Stops the activity. + + + Gets or sets the flags (defined by the W3C ID specification) associated with the activity. + the flags associated with the activity. + + + Gets a collection of key/value pairs that represents information that is passed to children of this . + Information that's passed to children of this . + + + Gets the context of the activity. Context becomes valid only if the activity has been started. + The context of the activity, if the activity has been started; otherwise, returns the default context. + + + Gets or sets the current operation () for the current thread. This flows across async calls. + The current operation for the current thread. + + + Gets or sets the default ID format for the . + + + Gets or sets the display name of the activity. + A string that represents the activity display name. + + + Gets the duration of the operation. + The delta between and the end time if the has ended ( or was called), or if the has not ended and was not called. + + + Gets the list of all the activity events attached to this activity. + An enumeration of activity events attached to this activity. If the activity has no events, returns an empty enumeration. + + + Gets or sets a value that detrmines if the is always used to define the default ID format. + + to always use the ; otherwise, . + + + Gets a value that indicates whether the parent context was created from remote propagation. + + + Gets an identifier that is specific to a particular request. + The activity ID. + + + Gets the format for the . + The format for the . + + + Gets or sets a value that indicates whether this activity should be populated with all the propagation information, as well as all the other properties, such as links, tags, and events. + + if the activity should be populated; otherwise. + + + Gets a value that indicates whether this object is stopped or not. + + + Gets the relationship between the activity, its parents, and its children in a trace. + One of the enumeration values that indicate relationship between the activity, its parents, and its children in a trace. + + + Gets the list of all the activity links attached to this activity. + An enumeration of activity links attached to this activity. If the activity has no links, returns an empty enumeration. + + + Gets the operation name. + The name of the operation. + + + Gets the parent that created this activity. + The parent of this , if it is from the same process, or if this instance has no parent (it is a root activity) or if the parent is from outside the process. + + + Gets the ID of this activity's parent. + The parent ID, if one exists, or if it does not. + + + Gets the parent's . + The parent's . + + + Gets a value that indicates whether the W3CIdFlags.Recorded flag is set. + + if the W3CIdFlags.Recorded flag is set; otherwise, . + + + Gets the root ID of this . + The root ID, or if the current instance has either a or an . + + + Gets the activity source associated with this activity. + + + Gets the SPAN part of the . + The ID for the SPAN part of , if the has the W3C format; otherwise, a zero . + + + Gets the time when the operation started. + The UTC time that the operation started. + + + Gets status code of the current activity object. + + + Gets the status description of the current activity object. + + + Gets the list of tags that represent information to log along with the activity. This information is not passed on to the children of this activity. + A key-value pair enumeration of tags and objects. + + + Gets a collection of key/value pairs that represent information that will be logged along with the to the logging system. + Information that will be logged along with the to the logging system. + + + Gets the TraceId part of the . + The ID for the TraceId part of the , if the ID has the W3C format; otherwise, a zero TraceId. + + + When starting an Activity which does not have a parent context, the Trace Id will automatically be generated using random numbers. + TraceIdGenerator can be used to override the runtime's default Trace Id generation algorithm. + + + Gets or sets the W3C header. + The W3C header. + + + Enumerates the data stored on an object. + Type being enumerated. + + + Returns an enumerator that iterates through the data stored on an Activity object. + + . + + + Advances the enumerator to the next element of the data. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Gets the element at the current position of the enumerator. + + + Provides data for the event. + + + Gets the object after the event. + + + Gets the object before the event. + + + A representation that conforms to the W3C TraceContext specification. It contains two identifiers: a TraceId and a SpanId, along with a set of common TraceFlags and system-specific TraceState values. + + + Construct a new activity context instance using the specified arguments. + A trace identifier. + A span identifier. + Contain details about the trace. + Carries system-specific configuration data. + Indicates if the context is propagated from a remote parent. + + + Indicates whether the current object is equal to another object of the same type. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Determines whether this instance and a specified object have the same value. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Parses a W3C trace context headers to an object. + The W3C trace parent header. + The trace state. + The trace parent is invalid. + The object created from the parsing operation. + + + Tries to parse the W3C trace context headers to the object. + The W3C trace parent header. + The W3C trace state. + + to propagate the context from the remote parent; otherwise, . + When this method returns, contains the object created from the parsing operation. + + if the operation succeeds; otherwise. + + + Tries to parse the W3C trace context headers to an object. + The W3C trace parent header. + The W3C trace state. + When this method returns , the object created from the parsing operation. + + if the parsing was successful; otherwise. + + + Indicates if the activity context was propagated from a remote parent. + + if it was propagated from a remote parent; otherwise. + + + The Id of the request as known by the caller. + The Span Id in the context. + + + The flags defined by the W3C standard along with the ID for the activity. + The context tracing flags. + + + The trace identifier. + The tracing identifier in the context. + + + Holds the W3C 'tracestate' header. + A string representing the W3C 'tracestate' header. + + + Encapsulates all the information that is sent to the activity listener, to make decisions about the creation of the activity instance, as well as its state. + +The possible generic type parameters are or . + The type of the property. Should be either or . + + + Gets the activity kind which the activity will be created with. + One of the enumeration values that represent an activity kind. + + + Gets the enumeration of activity links that the activity will be created with. + An enumeration of activity links. + + + Gets the name to use as OperationName of the activity that will get created. + A string representing the activity name. + + + Gets the parent context or parent Id that the activity will get created with. + The parent of the activity, represented either as a or as an . + + + Gets the collection that is used to add more tags during the sampling process. The added tags are also added to the created Activity if it is decided that it should be created by the callbacks. + The Activity tags collection. + + + Gets the activity source that creates the activity. + An activity source object. + + + Gets the tags that the activity will be created with. + A key-value pair enumeration of tags associated with the activity. + + + Gets the trace Id to use in the Activity object if it is decided that it should be created by callbacks. + The trace Id. + + + Gets or initializes the trace state to use when creating the Activity. + + + Represents an event containing a name and a timestamp, as well as an optional list of tags. + + + Initializes a new activity event instance using the specified name and the current time as the event timestamp. + The event name. + + + Initializes a new activity event instance using the specified name, timestamp and tags. + The event name. + The event timestamp. Timestamp must only be used for the events that happened in the past, not at the moment of this call. + The event tags. + + + Enumerate the tags attached to this object. + + . + + + Gets the activity event name. + A string representing the activity event name. + + + Gets the collection of tags associated with the event. + A key-value pair enumeration containing the tags associated with the event. + + + Gets the activity event timestamp. + A datetime offset representing the activity event timestamp. + + + Specifies the format of the property. + + + The hierarchical format. + + + An unknown format. + + + The W3C format. + + + Describes the relationship between the activity, its parents and its children in a trace. + + + Outgoing request to the external component. + + + Output received from an external component. + + + Internal operation within an application, as opposed to operations with remote parents or children. This is the default value. + + + Output provided to external components. + + + Requests incoming from external component. + + + Activities may be linked to zero or more activity context instances that are causally related. + +Activity links can point to activity contexts inside a single trace or across different traces. + +Activity links can be used to represent batched operations where an activity was initiated by multiple initiating activities, each representing a single incoming item being processed in the batch. + + + Constructs a new activity link, which can be linked to an activity. + The trace activity context. + The key-value pair list of tags associated to the activity context. + + + Enumerate the tags attached to this object. + + . + + + Indicates whether the current activity link is equal to another activity link. + The activity link to compare. + + if the current activity link is equal to ; otherwise, . + + + Indicates whether the current activity link is equal to another object. + The object to compare. + + if the current activity link is equal to ; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Retrieves the activity context inside this activity link. + + + Retrieves the key-value pair enumeration of tags attached to the activity context. + An enumeration of tags attached to the activity context. + + + Allows listening to the start and stop activity events and gives the opportunity to decide creating an activity for sampling scenarios. + + + Construct a new activity listener object to start listeneing to the activity events. + + + Unregisters this activity listener object from listening to activity events. + + + Gets or sets the callback used to listen to the activity start event. + An activity callback instance used to listen to the activity start event. + + + Gets or sets the callback used to listen to the activity stop event. + An activity callback instance used to listen to the activity stop event. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that allows deciding if activity object events that were created using the activity source object should be listened or not. + + to listen events; otherwise. + + + Enumeration values used by to indicate the amount of data to collect for the related . Requesting more data causes a greater performance overhead. + + + The activity object should be populated with all the propagation information and also all other properties such as Links, Tags, and Events. Using this value causes to return . + + + The activity object should be populated the same as the case. Additionally, Activity.Recorded is set to . For activities using the W3C trace ids, this sets a flag bit in the ID that will be propagated downstream requesting that the trace is recorded everywhere. + + + The activity object does not need to be created. + + + The activity object needs to be created. It will have a Name, a Source, an Id and Baggage. Other properties are unnecessary and will be ignored by this listener. + + + Provides APIs to create and start objects and to register objects to listen to the events. + + + Constructs an activity source object with the specified . + The name of the activity source object. + The version of the component publishing the tracing info. + + + Adds a listener to the activity starting and stopping events. + The activity listener object to use for listening to the activity events. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity + The + The created object or if there is no any event listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + If the Activity object is created, it will not automatically start. Callers will need to call to start it. + The operation name of the Activity. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity. + The + The parent Id to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Disposes the activity source object, removes the current instance from the global list, and empties the listeners list. + + + Checks if there are any listeners for this activity source. + + if there is a listener registered for this activity source; otherwise, . + + + Creates and starts a new object if there is any listener to the Activity events, returns otherwise. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The optional start timestamp to set on the created Activity object. + The operation name of the Activity. + The created object or if there is no any listener. + + + Creates a new activity if there are active listeners for it, using the specified name and activity kind. + The operation name of the activity. + The activity kind. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent activity context, tags, optional activity link and optional start time. + The operation name of the activity. + The activity kind. + The parent object to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent Id, tags, optional activity links and optional start time. + The operation name of the activity. + The activity kind. + The parent Id to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Returns the activity source name. + A string that represents the activity source name. + + + Returns the activity source version. + A string that represents the activity source version. + + + Represents a formatted based on a W3C standard. + + + Copies the 8 bytes of the current to a specified span. + The span to which the 8 bytes of the SpanID are to be copied. + + + Creates a new value from a read-only span of eight bytes. + A read-only span of eight bytes. + + does not contain eight bytes. + The new span ID. + + + Creates a new value from a read-only span of 16 hexadecimal characters. + A span that contains 16 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new span ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new span ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new span ID. + + + Determines whether this instance and the specified instance have the same value. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + the current instance and a specified object, which also must be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the SpanId. + The hash code of the SpanId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the SpanId of is the same as the SpanId of ; otherwise, . + + + Determine whether two specified instances have unequal values. + The first instance to compare. + The second instance to compare. + + if the SpanId of is different from the SpanId of ; otherwise, . + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Define the status code of the Activity which indicate the status of the instrumented operation. + + + Status code indicating an error is encountered during the operation. + + + Status code indicating the operation has been validated and completed successfully. + + + Unset status code is the default value indicating the status code is not initialized. + + + ActivityTagsCollection is a collection class used to store tracing tags. + +This collection will be used with classes like and . + +This collection behaves as follows: +- The collection items will be ordered according to how they are added. +- Don't allow duplication of items with the same key. +- When using the indexer to store an item in the collection: + - If the item has a key that previously existed in the collection and the value is , the collection item matching the key will be removed from the collection. + - If the item has a key that previously existed in the collection and the value is not , the new item value will replace the old value stored in the collection. + - Otherwise, the item will be added to the collection. +- Add method will add a new item to the collection if an item doesn't already exist with the same key. Otherwise, it will throw an exception. + + + Create a new instance of the collection. + + + Create a new instance of the collection and store the input list items in the collection. + Initial list to store in the collection. + + + Adds an item to the collection. + Key and value pair of the tag to add to the collection. + + already exists in the list. + + is . + + + Adds a tag with the provided key and value to the collection. This collection doesn't allow adding two tags with the same key. + The tag key. + The tag value. + + + Removes all items from the collection. + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Determines whether the collection contains an element with the specified key. + The key to locate in the . + + if the collection contains tag with that key. otherwise. + + + Copies the elements of the collection to an array, starting at a particular array index. + The array that is the destination of the elements copied from collection. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator for the . + + + Removes the first occurrence of a specific item from the collection. + The tag key value pair to remove. + + if item was successfully removed from the collection; otherwise, . This method also returns if item is not found in the original collection. + + + Removes the tag with the specified key from the collection. + The tag key. + + if the item existed and removed. otherwise. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through the collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The tag key. + The tag value. + When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized. + + + Gets the number of elements contained in the collection. + The number of elements contained in the . + + + Gets a value indicating whether the collection is read-only. This always returns . + Always returns . + + + Gets or sets a specified collection item. + + When setting a value to this indexer property, the following behavior is observed: +- If the key previously existed in the collection and the value is , the collection item matching the key will get removed from the collection. +- If the key previously existed in the collection and the value is not , the value will replace the old value stored in the collection. +- Otherwise, a new item will get added to the collection. + The key of the value to get or set. + The object mapped to the key. + + + Get the list of the keys of all stored tags. + An containing the keys of the object that implements . + + + Get the list of the values of all stored tags. + An containing the values in the object that implements . + + + Enumerates the elements of an . + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Specifies flags defined by the W3C standard that are associated with an activity. + + + The activity has not been marked. + + + The activity (or more likely its parents) has been marked as useful to record. + + + Represents a whose format is based on a W3C standard. + + + Copies the 16 bytes of the current to a specified span. + The span to which the 16 bytes of the trace ID are to be copied. + + + Creates a new value from a read-only span of 16 bytes. + A read-only span of 16 bytes. + + does not contain eight bytes. + The new trace ID. + + + Creates a new value from a read-only span of 32 hexadecimal characters. + A span that contains 32 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new trace ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new trace ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new . + + + Determines whether the current instance and a specified are equal. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + Determines whether this instance and a specified object, which must also be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the TraceId. + The hash code of the TraceId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is the same as the TraceId of ; otherwise, . + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is different from the TraceId of ; otherwise, . + + + Returns a 32-character hexadecimal string that represents this span ID. + The 32-character hexadecimal string representation of this trace ID. + + + Returns a 32-character hexadecimal string that represents this trace ID. + The 32-character hexadecimal string representation of this trace ID. + + + Provides an implementation of the abstract class that represents a named place to which a source sends its information (events). + + + Creates a new . + The name of this . + + + Disposes the NotificationListeners. + + + Determines whether there are any registered subscribers. + + if there are any registered subscribers, otherwise. + + + Checks whether the is enabled. + The name of the event to check. + + if notifications are enabled; otherwise, . + + + Checks if any subscriber to the diagnostic events is interested in receiving events with this name. Subscribers indicate their interest using a delegate provided in . + The name of the event to check. + The object that represents a context. + The object that represents a context. + + if it is enabled, otherwise. + + + Invokes the OnActivityExport method of all the subscribers. + The activity affected by an external event. + An object that represents the outgoing request. + + + Invokes the OnActivityImport method of all the subscribers. + The activity affected by an external event. + An object that represents the incoming request. + + + Adds a subscriber. + A subscriber. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name and up to two context objects. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or to if an event filter is not desirable. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, optionally filters events based on their name and up to two context objects, and specifies methods to call when providers import or export activites from outside the process. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or if an event filter is not desirable. + An action delegate that receives the activity affected by an external event and an object that represents the incoming request. + An action delegate that receives the activity affected by an external event and an object that represents the outgoing request. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name. + A subscriber. + A delegate that filters events based on their name (). The delegate should return if the event is enabled. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Returns a string with the name of this DiagnosticListener. + The name of this DiagnosticListener. + + + Logs a notification. + The name of the event to log. + An object that represents the payload for the event. + + + Gets the collection of listeners for this . + + + Gets the name of this . + The name of the . + + + An abstract class that allows code to be instrumented for production-time logging of rich data payloads for consumption within the process that was instrumented. + + + Initializes an instance of the class. + + + Verifies if the notification event is enabled. + The name of the event being written. + + if the notification event is enabled, otherwise. + + + Verifies it the notification event is enabled. + The name of the event being written. + An object that represents the additional context for IsEnabled. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) to check if consumer wants to get notifications for such events at all. Based on that, producer may call IsEnabled(string, object, object) again with non- context. + Optional. An object that represents the additional context for IsEnabled. by default. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) or producer passed all necessary context in . + + if the notification event is enabled, otherwise. + + + Transfers state from an activity to some event or operation, such as an outgoing HTTP request, that will occur outside the process. + The activity affected by an external event. + An object that represents the outgoing request. + + + Transfers state to an activity from some event or operation, such as an incoming request, that occurred outside the process. + The activity affected by an external event. + A payload that represents the incoming request. + + + Starts an and writes a start event. + The to be started. + An object that represent the value being passed as a payload for the event. + The started activity for convenient chaining. + + + + + + + + Stops the given , maintains the global activity, and notifies consumers that the was stopped. + The activity to be stopped. + An object that represents the value passed as a payload for the event. + + + + + + + + Provides a generic way of logging complex payloads. + The name of the event being written. + An object that represents the value being passed as a payload for the event. This is often an anonymous type which contains several sub-values. + + + + + + + + An implementation of determines if and how distributed context information is encoded and decoded as it traverses the network. + The encoding can be transported over any network protocol that supports string key-value pairs. For example, when using HTTP, each key-value pair is an HTTP header. + injects values into and extracts values from carriers as string key-value pairs. + + + Initializes an instance of the class. This constructor is protected and only meant to be called from parent classes. + + + Returns the default propagator object that will be initialized with. + An instance of the class. + + + Returns a propagator that does not transmit any distributed context information in outbound network messages. + An instance of the class. + + + Returns a propagator that attempts to act transparently, emitting the same data on outbound network requests that was received on the inbound request. + When encoding the outbound message, this propagator uses information from the request's root Activity, ignoring any intermediate Activities that may have been created while processing the request. + An instance of the class. + + + Extracts the baggage key-value pair list from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation baggage list from the carrier. + Returns the extracted key-value pair list from the carrier. + + + Extracts the trace ID and trace state from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation trace ID and state from the carrier. + When this method returns, contains the trace ID extracted from the carrier. + When this method returns, contains the trace state extracted from the carrier. + + + Injects the trace values stored in the object into a carrier. For example, into the headers of an HTTP request. + The Activity object has the distributed context to inject to the carrier. + The medium in which the distributed context will be stored. + The callback method to invoke to set a named key-value pair on the carrier. + + + Get or set the process-wide propagator object to use as the current selected propagator. + The currently selected process-wide propagator object. + + + Gets the set of field names this propagator is likely to read or write. + The list of fields that will be used by the DistributedContextPropagator. + + + Represents the callback method that's used in the extract methods of propagators. The callback is invoked to look up the value of a named field. + The medium used by propagators to read values from. + The propagation field name. + When this method returns, contains the value that corresponds to . The value is non- if there is only one value for the input field name. + When this method returns, contains a collection of values that correspond to . The value is non- if there is more than one value for the input field name. + + + Represents the callback method that's used in propagators' inject methods. This callback is invoked to set the value of a named field. + Propagators may invoke it multiple times in order to set multiple fields. + The medium used by propagators to write values to. + The propagation field name. + The value corresponding to . + + + Represents an instrument that supports adding non-negative values. For example, you might call counter.Add(1) each time a request is processed to track the total number of requests. Most metric viewers display counters using a rate (requests/sec), by default, but can also display a cumulative total. + The type that the counter represents. + + + Records the increment value of the measurement. + The increment measurement. + + + Records the increment value of the measurement. + The increment measurement. + A key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A list of key-value pair tags associated with the measurement. + + + Adds the increment value of the measurement. + The measurement value. + The tags associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A span of key-value pair tags associated with the measurement. + + + Represents a metrics instrument that can be used to report arbitrary values that are likely to be statistically meaningful, for example, the request duration. Call to create a Histogram object. + The type that the histogram represents. + + + Records a measurement value. + The measurement value. + + + Records a measurement value. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A list of key-value pair tags associated with the measurement. + + + Records a measurement value. + The measurement value. + The tags associated with the measurement. + + + Records a measurement value. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + + + + + Base class of all metrics instrument classes + + + Protected constructor to initialize the common instrument properties like the meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Activates the instrument to start recording measurements and to allow listeners to start listening to such measurements. + + + Gets the instrument description. + + + Gets a value that indicates if there are any listeners for this instrument. + + + Gets a value that indicates whether the instrument is an observable instrument. + + + Gets the Meter that created the instrument. + + + Gets the instrument name. + + + + Gets the instrument unit of measurements. + + + The base class for all non-observable instruments. + The type that the instrument represents. + + + Create the metrics instrument using the properties meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + The tags associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + Stores one observed metrics value and its associated tags. This type is used by an Observable instrument's Observe() method when reporting current measurements. + The type that the measurement represents. + + + Initializes a new instance of using the specified value. + The measurement value. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Gets the measurement tags list. + + + Gets the measurement value. + + + A delegate to represent the Meterlistener callbacks that are used when recording measurements. + The instrument that sent the measurement. + The measurement value. + A span of key-value pair tags associated with the measurement. + The state object originally passed to method. + The type that the measurement represents. + + + Meter is the class responsible for creating and tracking the Instruments. + + + + + + Initializes a new instance of using the specified meter name. + The Meter name. + + + Initializes a new instance of using the specified meter name and version. + The Meter name. + The optional Meter version. + + + + + + + + + Create a metrics Counter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new counter. + + + + + + + + + + Creates a Histogram, which is an instrument that can be used to report arbitrary values that are likely to be statistically meaningful. It is intended for statistics such as histograms, summaries, and percentiles. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new histogram. + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement.. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Create a metrics UpDownCounter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new up down counter. + + + + + + + + + + Dispose the Meter which will disable all instruments created by this meter. + + + + + + Gets the Meter name. + The Meter name + + + + + Gets the Meter version. + The Meter version. + + + + + + + + + + The MeterListener is class used to listen to the metrics instrument measurements recording. + + + Initializes a new instance of the class. + + + Stops listening to a specific instrument measurement recording. + The instrument to stop listening to. + The state object originally passed to method. + + + Disposes the listeners which will stop it from listening to any instrument. + + + Starts listening to a specific instrument measurement recording. + The instrument to listen to. + A state object that will be passed back to the callback getting measurements events. + + + Calls all Observable instruments that the listener is listening to, and calls with every collected measurement. + + + Sets a callback for a specific numeric type to get the measurement recording notification from all instruments which enabled listening and was created with the same specified numeric type. + If a measurement of type T is recorded and a callback of type T is registered, that callback will be used. + The callback which can be used to get measurement recording of numeric type T. + The type of the numeric measurement. + + + Enables the listener to start listening to instruments measurement recording. + + + Gets or sets the callback to get notified when an instrument is published. + The callback to get notified when an instrument is published. + + + Gets or sets the callback to get notified when the measurement is stopped on some instrument. + This can happen when the Meter or the Listener is disposed or calling on the listener. + The callback to get notified when the measurement is stopped on some instrument. + + + + + + + + + + + Represents a metrics-observable instrument that reports monotonically increasing values when the instrument is being observed, for example, CPU time (for different processes, threads, user mode, or kernel mode). Call to create the observable counter object. + The type that the observable counter represents. + + + Represents an observable instrument that reports non-additive values when the instrument is being observed, for example, the current room temperature. Call to create the observable counter object. + + + + ObservableInstrument{T} is the base class from which all metrics observable instruments will inherit. + The type that the observable instrument represents. + + + Initializes a new instance of the class using the specified meter, name, description, and unit. + All classes that extend ObservableInstrument{T} must call this constructor when constructing objects of the extended class. + The meter that created the instrument. + The instrument name. cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Fetches the current measurements being tracked by this instrument. All classes extending ObservableInstrument{T} need to implement this method. + The current measurements tracked by this instrument. + + + Gets a value that indicates if the instrument is an observable instrument. + + if the instrument is metrics-observable; otherwise. + + + A metrics-observable instrument that reports increasing or decreasing values when the instrument is being observed. +Use this instrument to monitor the process heap size or the approximate number of items in a lock-free circular buffer, for example. +To create an ObservableUpDownCounter object, use the methods. + The type that the counter represents. + + + An instrument that supports reporting positive or negative metric values. + UpDownCounter may be used in scenarios like reporting the change in active requests or queue size. + The type that the UpDownCounter represents. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A list of key-value pair tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A of tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A span of key-value pair tags associated with the measurement. + + + A delegate that defines the signature of the callbacks used in the sampling process. + The Activity creation options used by callbacks to decide creating the Activity object or not. + The type of the requested parent to create the Activity object with. Should be either a string or an instance. + An object containing the sampling results, which indicate the amount of data to collect for the related . + + + Represents a list of tags that can be accessed by index. Provides methods to search, sort, and manipulate lists. + + + Initializes a new instance of using the specified . + A span of tags to initialize the list with. + + + Adds a tag to the list. + The key-value pair of the tag to add to the list. + + + Adds a tag with the specified and to the list. + The tag key. + The tag value. + + + Removes all elements from the . + + + Determines whether a tag is in the . + The tag to locate in the . + + if item is found in the ; otherwise, . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional Array that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0 or greater than or equal to the length. + + + Copies the contents of this into a destination span. + The destination object. + + The number of elements in the source is greater than the number of elements that the destination span. + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Searches for the specified tag and returns the zero-based index of the first occurrence within the entire . + The tag to locate in the . + The zero-based index of the first ocurrence of in the tag list. + + + Inserts an element into the at the specified index. + The zero-based index at which the item should be inserted. + The tag to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific object from the . + The tag to remove from the . + + if is successfully removed; otherwise, . This method also returns if was not found in the . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + index is less than 0 or is greater than . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Gets the number of tags contained in the . + The number of elements contained in the . + + + Gets a value indicating whether the is read-only. This property will always return . + + Always returns . + + + Gets or sets the tags at the specified index. + The item index. + + is not a valid index in the . + The element at the specified index. + + + An enumerator for traversing a tag list collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + \ No newline at end of file diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net7.0/System.Diagnostics.DiagnosticSource.dll b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net7.0/System.Diagnostics.DiagnosticSource.dll new file mode 100644 index 0000000..72f0b70 Binary files /dev/null and b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net7.0/System.Diagnostics.DiagnosticSource.dll differ diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net7.0/System.Diagnostics.DiagnosticSource.xml b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net7.0/System.Diagnostics.DiagnosticSource.xml new file mode 100644 index 0000000..d94e6d2 --- /dev/null +++ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net7.0/System.Diagnostics.DiagnosticSource.xml @@ -0,0 +1,1886 @@ + + + + System.Diagnostics.DiagnosticSource + + + + Represents an operation with context to be used for logging. + + + Occurs when the value changes. + + + Initializes a new instance of the class. + The name of the operation. + + + Updates the to have a new baggage item with the specified key and value. + The baggage key. + The baggage value. + + for convenient chaining. + + + Adds the specified activity event to the events list. + The activity event to add. + + for convenient chaining. + + + Updates the activity to have a tag with an additional and . + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Updates the to have a new tag with the provided and . + The tag key. + The tag value. + + for convenient chaining. + + + Stops the activity if it is already started and notifies any event listeners. Nothing will happen otherwise. + + + When overriden by a derived type, this method releases any allocated resources. + + if the method is being called from the finalizer; if calling from user code. + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the tags attached to this Activity object. + + . + + + Returns the value of a key-value pair added to the activity with . + The baggage key. + The value of the key-value-pair item if it exists, or if it does not exist. + + + Returns the object mapped to the specified property name. + The name associated to the object. + The object mapped to the property name, if one is found; otherwise, . + + + Returns the value of the Activity tag mapped to the input key/>. + Returns if that key does not exist. + The tag key string. + The tag value mapped to the input key. + + + Add or update the Activity baggage with the input key and value. + If the input value is - if the collection has any baggage with the same key, then this baggage will get removed from the collection. + - otherwise, nothing will happen and the collection will not change. + If the input value is not - if the collection has any baggage with the same key, then the value mapped to this key will get updated with the new input value. + - otherwise, the key and value will get added as a new baggage to the collection. + Baggage item will be updated/removed only if it was originaly added to the current activity. Items inherited from the parents will not be changed/removed, new item would be added to current activity baggage instead. + The baggage key name + The baggage value mapped to the input key + + for convenient chaining. + + + Attaches any custom object to this activity. If the specified was previously associated with another object, the property will be updated to be associated with the new instead. It is recommended to use a unique property name to avoid conflicts with anyone using the same value. + The name to associate the value with. + The object to attach and map to the property name. + + + Updates the to set its as the difference between and the specified stop time. + The UTC stop time. + + for convenient chaining. + + + Sets the ID format on this before it is started. + One of the enumeration values that specifies the format of the property. + + for convenient chaining. + + + Sets the parent ID using the W3C convention of a TraceId and a SpanId. + The parent activity's TraceId. + The parent activity's SpanId. + One of the enumeration values that specifies flags defined by the W3C standard that are associated with an activity. + + for convenient chaining. + + + Updates this to indicate that the with an ID of caused this . + The ID of the parent operation. + + for convenient chaining. + + + Sets the start time of this . + The start time in UTC. + + for convenient chaining. + + + Sets the status code and description on the current activity object. + The status code + The error status description + + for convenient chaining. + + + Adds or update the activity tag with the input key and value. + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Starts the activity. + + for convenient chaining. + + + Stops the activity. + + + Gets or sets the flags (defined by the W3C ID specification) associated with the activity. + the flags associated with the activity. + + + Gets a collection of key/value pairs that represents information that is passed to children of this . + Information that's passed to children of this . + + + Gets the context of the activity. Context becomes valid only if the activity has been started. + The context of the activity, if the activity has been started; otherwise, returns the default context. + + + Gets or sets the current operation () for the current thread. This flows across async calls. + The current operation for the current thread. + + + Gets or sets the default ID format for the . + + + Gets or sets the display name of the activity. + A string that represents the activity display name. + + + Gets the duration of the operation. + The delta between and the end time if the has ended ( or was called), or if the has not ended and was not called. + + + Gets the list of all the activity events attached to this activity. + An enumeration of activity events attached to this activity. If the activity has no events, returns an empty enumeration. + + + Gets or sets a value that detrmines if the is always used to define the default ID format. + + to always use the ; otherwise, . + + + Gets a value that indicates whether the parent context was created from remote propagation. + + + Gets an identifier that is specific to a particular request. + The activity ID. + + + Gets the format for the . + The format for the . + + + Gets or sets a value that indicates whether this activity should be populated with all the propagation information, as well as all the other properties, such as links, tags, and events. + + if the activity should be populated; otherwise. + + + Gets a value that indicates whether this object is stopped or not. + + + Gets the relationship between the activity, its parents, and its children in a trace. + One of the enumeration values that indicate relationship between the activity, its parents, and its children in a trace. + + + Gets the list of all the activity links attached to this activity. + An enumeration of activity links attached to this activity. If the activity has no links, returns an empty enumeration. + + + Gets the operation name. + The name of the operation. + + + Gets the parent that created this activity. + The parent of this , if it is from the same process, or if this instance has no parent (it is a root activity) or if the parent is from outside the process. + + + Gets the ID of this activity's parent. + The parent ID, if one exists, or if it does not. + + + Gets the parent's . + The parent's . + + + Gets a value that indicates whether the W3CIdFlags.Recorded flag is set. + + if the W3CIdFlags.Recorded flag is set; otherwise, . + + + Gets the root ID of this . + The root ID, or if the current instance has either a or an . + + + Gets the activity source associated with this activity. + + + Gets the SPAN part of the . + The ID for the SPAN part of , if the has the W3C format; otherwise, a zero . + + + Gets the time when the operation started. + The UTC time that the operation started. + + + Gets status code of the current activity object. + + + Gets the status description of the current activity object. + + + Gets the list of tags that represent information to log along with the activity. This information is not passed on to the children of this activity. + A key-value pair enumeration of tags and objects. + + + Gets a collection of key/value pairs that represent information that will be logged along with the to the logging system. + Information that will be logged along with the to the logging system. + + + Gets the TraceId part of the . + The ID for the TraceId part of the , if the ID has the W3C format; otherwise, a zero TraceId. + + + When starting an Activity which does not have a parent context, the Trace Id will automatically be generated using random numbers. + TraceIdGenerator can be used to override the runtime's default Trace Id generation algorithm. + + + Gets or sets the W3C header. + The W3C header. + + + Enumerates the data stored on an object. + Type being enumerated. + + + Returns an enumerator that iterates through the data stored on an Activity object. + + . + + + Advances the enumerator to the next element of the data. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Gets the element at the current position of the enumerator. + + + Provides data for the event. + + + Gets the object after the event. + + + Gets the object before the event. + + + A representation that conforms to the W3C TraceContext specification. It contains two identifiers: a TraceId and a SpanId, along with a set of common TraceFlags and system-specific TraceState values. + + + Construct a new activity context instance using the specified arguments. + A trace identifier. + A span identifier. + Contain details about the trace. + Carries system-specific configuration data. + Indicates if the context is propagated from a remote parent. + + + Indicates whether the current object is equal to another object of the same type. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Determines whether this instance and a specified object have the same value. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Parses a W3C trace context headers to an object. + The W3C trace parent header. + The trace state. + The trace parent is invalid. + The object created from the parsing operation. + + + Tries to parse the W3C trace context headers to the object. + The W3C trace parent header. + The W3C trace state. + + to propagate the context from the remote parent; otherwise, . + When this method returns, contains the object created from the parsing operation. + + if the operation succeeds; otherwise. + + + Tries to parse the W3C trace context headers to an object. + The W3C trace parent header. + The W3C trace state. + When this method returns , the object created from the parsing operation. + + if the parsing was successful; otherwise. + + + Indicates if the activity context was propagated from a remote parent. + + if it was propagated from a remote parent; otherwise. + + + The Id of the request as known by the caller. + The Span Id in the context. + + + The flags defined by the W3C standard along with the ID for the activity. + The context tracing flags. + + + The trace identifier. + The tracing identifier in the context. + + + Holds the W3C 'tracestate' header. + A string representing the W3C 'tracestate' header. + + + Encapsulates all the information that is sent to the activity listener, to make decisions about the creation of the activity instance, as well as its state. + +The possible generic type parameters are or . + The type of the property. Should be either or . + + + Gets the activity kind which the activity will be created with. + One of the enumeration values that represent an activity kind. + + + Gets the enumeration of activity links that the activity will be created with. + An enumeration of activity links. + + + Gets the name to use as OperationName of the activity that will get created. + A string representing the activity name. + + + Gets the parent context or parent Id that the activity will get created with. + The parent of the activity, represented either as a or as an . + + + Gets the collection that is used to add more tags during the sampling process. The added tags are also added to the created Activity if it is decided that it should be created by the callbacks. + The Activity tags collection. + + + Gets the activity source that creates the activity. + An activity source object. + + + Gets the tags that the activity will be created with. + A key-value pair enumeration of tags associated with the activity. + + + Gets the trace Id to use in the Activity object if it is decided that it should be created by callbacks. + The trace Id. + + + Gets or initializes the trace state to use when creating the Activity. + + + Represents an event containing a name and a timestamp, as well as an optional list of tags. + + + Initializes a new activity event instance using the specified name and the current time as the event timestamp. + The event name. + + + Initializes a new activity event instance using the specified name, timestamp and tags. + The event name. + The event timestamp. Timestamp must only be used for the events that happened in the past, not at the moment of this call. + The event tags. + + + Enumerate the tags attached to this object. + + . + + + Gets the activity event name. + A string representing the activity event name. + + + Gets the collection of tags associated with the event. + A key-value pair enumeration containing the tags associated with the event. + + + Gets the activity event timestamp. + A datetime offset representing the activity event timestamp. + + + Specifies the format of the property. + + + The hierarchical format. + + + An unknown format. + + + The W3C format. + + + Describes the relationship between the activity, its parents and its children in a trace. + + + Outgoing request to the external component. + + + Output received from an external component. + + + Internal operation within an application, as opposed to operations with remote parents or children. This is the default value. + + + Output provided to external components. + + + Requests incoming from external component. + + + Activities may be linked to zero or more activity context instances that are causally related. + +Activity links can point to activity contexts inside a single trace or across different traces. + +Activity links can be used to represent batched operations where an activity was initiated by multiple initiating activities, each representing a single incoming item being processed in the batch. + + + Constructs a new activity link, which can be linked to an activity. + The trace activity context. + The key-value pair list of tags associated to the activity context. + + + Enumerate the tags attached to this object. + + . + + + Indicates whether the current activity link is equal to another activity link. + The activity link to compare. + + if the current activity link is equal to ; otherwise, . + + + Indicates whether the current activity link is equal to another object. + The object to compare. + + if the current activity link is equal to ; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Retrieves the activity context inside this activity link. + + + Retrieves the key-value pair enumeration of tags attached to the activity context. + An enumeration of tags attached to the activity context. + + + Allows listening to the start and stop activity events and gives the opportunity to decide creating an activity for sampling scenarios. + + + Construct a new activity listener object to start listeneing to the activity events. + + + Unregisters this activity listener object from listening to activity events. + + + Gets or sets the callback used to listen to the activity start event. + An activity callback instance used to listen to the activity start event. + + + Gets or sets the callback used to listen to the activity stop event. + An activity callback instance used to listen to the activity stop event. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that allows deciding if activity object events that were created using the activity source object should be listened or not. + + to listen events; otherwise. + + + Enumeration values used by to indicate the amount of data to collect for the related . Requesting more data causes a greater performance overhead. + + + The activity object should be populated with all the propagation information and also all other properties such as Links, Tags, and Events. Using this value causes to return . + + + The activity object should be populated the same as the case. Additionally, Activity.Recorded is set to . For activities using the W3C trace ids, this sets a flag bit in the ID that will be propagated downstream requesting that the trace is recorded everywhere. + + + The activity object does not need to be created. + + + The activity object needs to be created. It will have a Name, a Source, an Id and Baggage. Other properties are unnecessary and will be ignored by this listener. + + + Provides APIs to create and start objects and to register objects to listen to the events. + + + Constructs an activity source object with the specified . + The name of the activity source object. + The version of the component publishing the tracing info. + + + Adds a listener to the activity starting and stopping events. + The activity listener object to use for listening to the activity events. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity + The + The created object or if there is no any event listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + If the Activity object is created, it will not automatically start. Callers will need to call to start it. + The operation name of the Activity. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity. + The + The parent Id to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Disposes the activity source object, removes the current instance from the global list, and empties the listeners list. + + + Checks if there are any listeners for this activity source. + + if there is a listener registered for this activity source; otherwise, . + + + Creates and starts a new object if there is any listener to the Activity events, returns otherwise. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The optional start timestamp to set on the created Activity object. + The operation name of the Activity. + The created object or if there is no any listener. + + + Creates a new activity if there are active listeners for it, using the specified name and activity kind. + The operation name of the activity. + The activity kind. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent activity context, tags, optional activity link and optional start time. + The operation name of the activity. + The activity kind. + The parent object to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent Id, tags, optional activity links and optional start time. + The operation name of the activity. + The activity kind. + The parent Id to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Returns the activity source name. + A string that represents the activity source name. + + + Returns the activity source version. + A string that represents the activity source version. + + + Represents a formatted based on a W3C standard. + + + Copies the 8 bytes of the current to a specified span. + The span to which the 8 bytes of the SpanID are to be copied. + + + Creates a new value from a read-only span of eight bytes. + A read-only span of eight bytes. + + does not contain eight bytes. + The new span ID. + + + Creates a new value from a read-only span of 16 hexadecimal characters. + A span that contains 16 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new span ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new span ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new span ID. + + + Determines whether this instance and the specified instance have the same value. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + the current instance and a specified object, which also must be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the SpanId. + The hash code of the SpanId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the SpanId of is the same as the SpanId of ; otherwise, . + + + Determine whether two specified instances have unequal values. + The first instance to compare. + The second instance to compare. + + if the SpanId of is different from the SpanId of ; otherwise, . + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Define the status code of the Activity which indicate the status of the instrumented operation. + + + Status code indicating an error is encountered during the operation. + + + Status code indicating the operation has been validated and completed successfully. + + + Unset status code is the default value indicating the status code is not initialized. + + + ActivityTagsCollection is a collection class used to store tracing tags. + +This collection will be used with classes like and . + +This collection behaves as follows: +- The collection items will be ordered according to how they are added. +- Don't allow duplication of items with the same key. +- When using the indexer to store an item in the collection: + - If the item has a key that previously existed in the collection and the value is , the collection item matching the key will be removed from the collection. + - If the item has a key that previously existed in the collection and the value is not , the new item value will replace the old value stored in the collection. + - Otherwise, the item will be added to the collection. +- Add method will add a new item to the collection if an item doesn't already exist with the same key. Otherwise, it will throw an exception. + + + Create a new instance of the collection. + + + Create a new instance of the collection and store the input list items in the collection. + Initial list to store in the collection. + + + Adds an item to the collection. + Key and value pair of the tag to add to the collection. + + already exists in the list. + + is . + + + Adds a tag with the provided key and value to the collection. This collection doesn't allow adding two tags with the same key. + The tag key. + The tag value. + + + Removes all items from the collection. + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Determines whether the collection contains an element with the specified key. + The key to locate in the . + + if the collection contains tag with that key. otherwise. + + + Copies the elements of the collection to an array, starting at a particular array index. + The array that is the destination of the elements copied from collection. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator for the . + + + Removes the first occurrence of a specific item from the collection. + The tag key value pair to remove. + + if item was successfully removed from the collection; otherwise, . This method also returns if item is not found in the original collection. + + + Removes the tag with the specified key from the collection. + The tag key. + + if the item existed and removed. otherwise. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through the collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The tag key. + The tag value. + When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized. + + + Gets the number of elements contained in the collection. + The number of elements contained in the . + + + Gets a value indicating whether the collection is read-only. This always returns . + Always returns . + + + Gets or sets a specified collection item. + + When setting a value to this indexer property, the following behavior is observed: +- If the key previously existed in the collection and the value is , the collection item matching the key will get removed from the collection. +- If the key previously existed in the collection and the value is not , the value will replace the old value stored in the collection. +- Otherwise, a new item will get added to the collection. + The key of the value to get or set. + The object mapped to the key. + + + Get the list of the keys of all stored tags. + An containing the keys of the object that implements . + + + Get the list of the values of all stored tags. + An containing the values in the object that implements . + + + Enumerates the elements of an . + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Specifies flags defined by the W3C standard that are associated with an activity. + + + The activity has not been marked. + + + The activity (or more likely its parents) has been marked as useful to record. + + + Represents a whose format is based on a W3C standard. + + + Copies the 16 bytes of the current to a specified span. + The span to which the 16 bytes of the trace ID are to be copied. + + + Creates a new value from a read-only span of 16 bytes. + A read-only span of 16 bytes. + + does not contain eight bytes. + The new trace ID. + + + Creates a new value from a read-only span of 32 hexadecimal characters. + A span that contains 32 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new trace ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new trace ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new . + + + Determines whether the current instance and a specified are equal. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + Determines whether this instance and a specified object, which must also be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the TraceId. + The hash code of the TraceId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is the same as the TraceId of ; otherwise, . + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is different from the TraceId of ; otherwise, . + + + Returns a 32-character hexadecimal string that represents this span ID. + The 32-character hexadecimal string representation of this trace ID. + + + Returns a 32-character hexadecimal string that represents this trace ID. + The 32-character hexadecimal string representation of this trace ID. + + + Provides an implementation of the abstract class that represents a named place to which a source sends its information (events). + + + Creates a new . + The name of this . + + + Disposes the NotificationListeners. + + + Determines whether there are any registered subscribers. + + if there are any registered subscribers, otherwise. + + + Checks whether the is enabled. + The name of the event to check. + + if notifications are enabled; otherwise, . + + + Checks if any subscriber to the diagnostic events is interested in receiving events with this name. Subscribers indicate their interest using a delegate provided in . + The name of the event to check. + The object that represents a context. + The object that represents a context. + + if it is enabled, otherwise. + + + Invokes the OnActivityExport method of all the subscribers. + The activity affected by an external event. + An object that represents the outgoing request. + + + Invokes the OnActivityImport method of all the subscribers. + The activity affected by an external event. + An object that represents the incoming request. + + + Adds a subscriber. + A subscriber. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name and up to two context objects. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or to if an event filter is not desirable. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, optionally filters events based on their name and up to two context objects, and specifies methods to call when providers import or export activites from outside the process. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or if an event filter is not desirable. + An action delegate that receives the activity affected by an external event and an object that represents the incoming request. + An action delegate that receives the activity affected by an external event and an object that represents the outgoing request. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name. + A subscriber. + A delegate that filters events based on their name (). The delegate should return if the event is enabled. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Returns a string with the name of this DiagnosticListener. + The name of this DiagnosticListener. + + + Logs a notification. + The name of the event to log. + An object that represents the payload for the event. + + + Gets the collection of listeners for this . + + + Gets the name of this . + The name of the . + + + An abstract class that allows code to be instrumented for production-time logging of rich data payloads for consumption within the process that was instrumented. + + + Initializes an instance of the class. + + + Verifies if the notification event is enabled. + The name of the event being written. + + if the notification event is enabled, otherwise. + + + Verifies it the notification event is enabled. + The name of the event being written. + An object that represents the additional context for IsEnabled. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) to check if consumer wants to get notifications for such events at all. Based on that, producer may call IsEnabled(string, object, object) again with non- context. + Optional. An object that represents the additional context for IsEnabled. by default. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) or producer passed all necessary context in . + + if the notification event is enabled, otherwise. + + + Transfers state from an activity to some event or operation, such as an outgoing HTTP request, that will occur outside the process. + The activity affected by an external event. + An object that represents the outgoing request. + + + Transfers state to an activity from some event or operation, such as an incoming request, that occurred outside the process. + The activity affected by an external event. + A payload that represents the incoming request. + + + Starts an and writes a start event. + The to be started. + An object that represent the value being passed as a payload for the event. + The started activity for convenient chaining. + + + + + + + + Stops the given , maintains the global activity, and notifies consumers that the was stopped. + The activity to be stopped. + An object that represents the value passed as a payload for the event. + + + + + + + + Provides a generic way of logging complex payloads. + The name of the event being written. + An object that represents the value being passed as a payload for the event. This is often an anonymous type which contains several sub-values. + + + + + + + + An implementation of determines if and how distributed context information is encoded and decoded as it traverses the network. + The encoding can be transported over any network protocol that supports string key-value pairs. For example, when using HTTP, each key-value pair is an HTTP header. + injects values into and extracts values from carriers as string key-value pairs. + + + Initializes an instance of the class. This constructor is protected and only meant to be called from parent classes. + + + Returns the default propagator object that will be initialized with. + An instance of the class. + + + Returns a propagator that does not transmit any distributed context information in outbound network messages. + An instance of the class. + + + Returns a propagator that attempts to act transparently, emitting the same data on outbound network requests that was received on the inbound request. + When encoding the outbound message, this propagator uses information from the request's root Activity, ignoring any intermediate Activities that may have been created while processing the request. + An instance of the class. + + + Extracts the baggage key-value pair list from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation baggage list from the carrier. + Returns the extracted key-value pair list from the carrier. + + + Extracts the trace ID and trace state from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation trace ID and state from the carrier. + When this method returns, contains the trace ID extracted from the carrier. + When this method returns, contains the trace state extracted from the carrier. + + + Injects the trace values stored in the object into a carrier. For example, into the headers of an HTTP request. + The Activity object has the distributed context to inject to the carrier. + The medium in which the distributed context will be stored. + The callback method to invoke to set a named key-value pair on the carrier. + + + Get or set the process-wide propagator object to use as the current selected propagator. + The currently selected process-wide propagator object. + + + Gets the set of field names this propagator is likely to read or write. + The list of fields that will be used by the DistributedContextPropagator. + + + Represents the callback method that's used in the extract methods of propagators. The callback is invoked to look up the value of a named field. + The medium used by propagators to read values from. + The propagation field name. + When this method returns, contains the value that corresponds to . The value is non- if there is only one value for the input field name. + When this method returns, contains a collection of values that correspond to . The value is non- if there is more than one value for the input field name. + + + Represents the callback method that's used in propagators' inject methods. This callback is invoked to set the value of a named field. + Propagators may invoke it multiple times in order to set multiple fields. + The medium used by propagators to write values to. + The propagation field name. + The value corresponding to . + + + Represents an instrument that supports adding non-negative values. For example, you might call counter.Add(1) each time a request is processed to track the total number of requests. Most metric viewers display counters using a rate (requests/sec), by default, but can also display a cumulative total. + The type that the counter represents. + + + Records the increment value of the measurement. + The increment measurement. + + + Records the increment value of the measurement. + The increment measurement. + A key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A list of key-value pair tags associated with the measurement. + + + Adds the increment value of the measurement. + The measurement value. + The tags associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A span of key-value pair tags associated with the measurement. + + + Represents a metrics instrument that can be used to report arbitrary values that are likely to be statistically meaningful, for example, the request duration. Call to create a Histogram object. + The type that the histogram represents. + + + Records a measurement value. + The measurement value. + + + Records a measurement value. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A list of key-value pair tags associated with the measurement. + + + Records a measurement value. + The measurement value. + The tags associated with the measurement. + + + Records a measurement value. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + + + + + Base class of all metrics instrument classes + + + Protected constructor to initialize the common instrument properties like the meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Activates the instrument to start recording measurements and to allow listeners to start listening to such measurements. + + + Gets the instrument description. + + + Gets a value that indicates if there are any listeners for this instrument. + + + Gets a value that indicates whether the instrument is an observable instrument. + + + Gets the Meter that created the instrument. + + + Gets the instrument name. + + + + Gets the instrument unit of measurements. + + + The base class for all non-observable instruments. + The type that the instrument represents. + + + Create the metrics instrument using the properties meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + The tags associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + Stores one observed metrics value and its associated tags. This type is used by an Observable instrument's Observe() method when reporting current measurements. + The type that the measurement represents. + + + Initializes a new instance of using the specified value. + The measurement value. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Gets the measurement tags list. + + + Gets the measurement value. + + + A delegate to represent the Meterlistener callbacks that are used when recording measurements. + The instrument that sent the measurement. + The measurement value. + A span of key-value pair tags associated with the measurement. + The state object originally passed to method. + The type that the measurement represents. + + + Meter is the class responsible for creating and tracking the Instruments. + + + + + + Initializes a new instance of using the specified meter name. + The Meter name. + + + Initializes a new instance of using the specified meter name and version. + The Meter name. + The optional Meter version. + + + + + + + + + Create a metrics Counter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new counter. + + + + + + + + + + Creates a Histogram, which is an instrument that can be used to report arbitrary values that are likely to be statistically meaningful. It is intended for statistics such as histograms, summaries, and percentiles. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new histogram. + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement.. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Create a metrics UpDownCounter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new up down counter. + + + + + + + + + + Dispose the Meter which will disable all instruments created by this meter. + + + + + + Gets the Meter name. + The Meter name + + + + + Gets the Meter version. + The Meter version. + + + + + + + + + + The MeterListener is class used to listen to the metrics instrument measurements recording. + + + Initializes a new instance of the class. + + + Stops listening to a specific instrument measurement recording. + The instrument to stop listening to. + The state object originally passed to method. + + + Disposes the listeners which will stop it from listening to any instrument. + + + Starts listening to a specific instrument measurement recording. + The instrument to listen to. + A state object that will be passed back to the callback getting measurements events. + + + Calls all Observable instruments that the listener is listening to, and calls with every collected measurement. + + + Sets a callback for a specific numeric type to get the measurement recording notification from all instruments which enabled listening and was created with the same specified numeric type. + If a measurement of type T is recorded and a callback of type T is registered, that callback will be used. + The callback which can be used to get measurement recording of numeric type T. + The type of the numeric measurement. + + + Enables the listener to start listening to instruments measurement recording. + + + Gets or sets the callback to get notified when an instrument is published. + The callback to get notified when an instrument is published. + + + Gets or sets the callback to get notified when the measurement is stopped on some instrument. + This can happen when the Meter or the Listener is disposed or calling on the listener. + The callback to get notified when the measurement is stopped on some instrument. + + + + + + + + + + + Represents a metrics-observable instrument that reports monotonically increasing values when the instrument is being observed, for example, CPU time (for different processes, threads, user mode, or kernel mode). Call to create the observable counter object. + The type that the observable counter represents. + + + Represents an observable instrument that reports non-additive values when the instrument is being observed, for example, the current room temperature. Call to create the observable counter object. + + + + ObservableInstrument{T} is the base class from which all metrics observable instruments will inherit. + The type that the observable instrument represents. + + + Initializes a new instance of the class using the specified meter, name, description, and unit. + All classes that extend ObservableInstrument{T} must call this constructor when constructing objects of the extended class. + The meter that created the instrument. + The instrument name. cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Fetches the current measurements being tracked by this instrument. All classes extending ObservableInstrument{T} need to implement this method. + The current measurements tracked by this instrument. + + + Gets a value that indicates if the instrument is an observable instrument. + + if the instrument is metrics-observable; otherwise. + + + A metrics-observable instrument that reports increasing or decreasing values when the instrument is being observed. +Use this instrument to monitor the process heap size or the approximate number of items in a lock-free circular buffer, for example. +To create an ObservableUpDownCounter object, use the methods. + The type that the counter represents. + + + An instrument that supports reporting positive or negative metric values. + UpDownCounter may be used in scenarios like reporting the change in active requests or queue size. + The type that the UpDownCounter represents. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A list of key-value pair tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A of tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A span of key-value pair tags associated with the measurement. + + + A delegate that defines the signature of the callbacks used in the sampling process. + The Activity creation options used by callbacks to decide creating the Activity object or not. + The type of the requested parent to create the Activity object with. Should be either a string or an instance. + An object containing the sampling results, which indicate the amount of data to collect for the related . + + + Represents a list of tags that can be accessed by index. Provides methods to search, sort, and manipulate lists. + + + Initializes a new instance of using the specified . + A span of tags to initialize the list with. + + + Adds a tag to the list. + The key-value pair of the tag to add to the list. + + + Adds a tag with the specified and to the list. + The tag key. + The tag value. + + + Removes all elements from the . + + + Determines whether a tag is in the . + The tag to locate in the . + + if item is found in the ; otherwise, . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional Array that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0 or greater than or equal to the length. + + + Copies the contents of this into a destination span. + The destination object. + + The number of elements in the source is greater than the number of elements that the destination span. + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Searches for the specified tag and returns the zero-based index of the first occurrence within the entire . + The tag to locate in the . + The zero-based index of the first ocurrence of in the tag list. + + + Inserts an element into the at the specified index. + The zero-based index at which the item should be inserted. + The tag to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific object from the . + The tag to remove from the . + + if is successfully removed; otherwise, . This method also returns if was not found in the . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + index is less than 0 or is greater than . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Gets the number of tags contained in the . + The number of elements contained in the . + + + Gets a value indicating whether the is read-only. This property will always return . + + Always returns . + + + Gets or sets the tags at the specified index. + The item index. + + is not a valid index in the . + The element at the specified index. + + + An enumerator for traversing a tag list collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + \ No newline at end of file diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net8.0/System.Diagnostics.DiagnosticSource.dll b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net8.0/System.Diagnostics.DiagnosticSource.dll new file mode 100644 index 0000000..a9f8a74 Binary files /dev/null and b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net8.0/System.Diagnostics.DiagnosticSource.dll differ diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net8.0/System.Diagnostics.DiagnosticSource.xml b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net8.0/System.Diagnostics.DiagnosticSource.xml new file mode 100644 index 0000000..d94e6d2 --- /dev/null +++ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/net8.0/System.Diagnostics.DiagnosticSource.xml @@ -0,0 +1,1886 @@ + + + + System.Diagnostics.DiagnosticSource + + + + Represents an operation with context to be used for logging. + + + Occurs when the value changes. + + + Initializes a new instance of the class. + The name of the operation. + + + Updates the to have a new baggage item with the specified key and value. + The baggage key. + The baggage value. + + for convenient chaining. + + + Adds the specified activity event to the events list. + The activity event to add. + + for convenient chaining. + + + Updates the activity to have a tag with an additional and . + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Updates the to have a new tag with the provided and . + The tag key. + The tag value. + + for convenient chaining. + + + Stops the activity if it is already started and notifies any event listeners. Nothing will happen otherwise. + + + When overriden by a derived type, this method releases any allocated resources. + + if the method is being called from the finalizer; if calling from user code. + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the tags attached to this Activity object. + + . + + + Returns the value of a key-value pair added to the activity with . + The baggage key. + The value of the key-value-pair item if it exists, or if it does not exist. + + + Returns the object mapped to the specified property name. + The name associated to the object. + The object mapped to the property name, if one is found; otherwise, . + + + Returns the value of the Activity tag mapped to the input key/>. + Returns if that key does not exist. + The tag key string. + The tag value mapped to the input key. + + + Add or update the Activity baggage with the input key and value. + If the input value is - if the collection has any baggage with the same key, then this baggage will get removed from the collection. + - otherwise, nothing will happen and the collection will not change. + If the input value is not - if the collection has any baggage with the same key, then the value mapped to this key will get updated with the new input value. + - otherwise, the key and value will get added as a new baggage to the collection. + Baggage item will be updated/removed only if it was originaly added to the current activity. Items inherited from the parents will not be changed/removed, new item would be added to current activity baggage instead. + The baggage key name + The baggage value mapped to the input key + + for convenient chaining. + + + Attaches any custom object to this activity. If the specified was previously associated with another object, the property will be updated to be associated with the new instead. It is recommended to use a unique property name to avoid conflicts with anyone using the same value. + The name to associate the value with. + The object to attach and map to the property name. + + + Updates the to set its as the difference between and the specified stop time. + The UTC stop time. + + for convenient chaining. + + + Sets the ID format on this before it is started. + One of the enumeration values that specifies the format of the property. + + for convenient chaining. + + + Sets the parent ID using the W3C convention of a TraceId and a SpanId. + The parent activity's TraceId. + The parent activity's SpanId. + One of the enumeration values that specifies flags defined by the W3C standard that are associated with an activity. + + for convenient chaining. + + + Updates this to indicate that the with an ID of caused this . + The ID of the parent operation. + + for convenient chaining. + + + Sets the start time of this . + The start time in UTC. + + for convenient chaining. + + + Sets the status code and description on the current activity object. + The status code + The error status description + + for convenient chaining. + + + Adds or update the activity tag with the input key and value. + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Starts the activity. + + for convenient chaining. + + + Stops the activity. + + + Gets or sets the flags (defined by the W3C ID specification) associated with the activity. + the flags associated with the activity. + + + Gets a collection of key/value pairs that represents information that is passed to children of this . + Information that's passed to children of this . + + + Gets the context of the activity. Context becomes valid only if the activity has been started. + The context of the activity, if the activity has been started; otherwise, returns the default context. + + + Gets or sets the current operation () for the current thread. This flows across async calls. + The current operation for the current thread. + + + Gets or sets the default ID format for the . + + + Gets or sets the display name of the activity. + A string that represents the activity display name. + + + Gets the duration of the operation. + The delta between and the end time if the has ended ( or was called), or if the has not ended and was not called. + + + Gets the list of all the activity events attached to this activity. + An enumeration of activity events attached to this activity. If the activity has no events, returns an empty enumeration. + + + Gets or sets a value that detrmines if the is always used to define the default ID format. + + to always use the ; otherwise, . + + + Gets a value that indicates whether the parent context was created from remote propagation. + + + Gets an identifier that is specific to a particular request. + The activity ID. + + + Gets the format for the . + The format for the . + + + Gets or sets a value that indicates whether this activity should be populated with all the propagation information, as well as all the other properties, such as links, tags, and events. + + if the activity should be populated; otherwise. + + + Gets a value that indicates whether this object is stopped or not. + + + Gets the relationship between the activity, its parents, and its children in a trace. + One of the enumeration values that indicate relationship between the activity, its parents, and its children in a trace. + + + Gets the list of all the activity links attached to this activity. + An enumeration of activity links attached to this activity. If the activity has no links, returns an empty enumeration. + + + Gets the operation name. + The name of the operation. + + + Gets the parent that created this activity. + The parent of this , if it is from the same process, or if this instance has no parent (it is a root activity) or if the parent is from outside the process. + + + Gets the ID of this activity's parent. + The parent ID, if one exists, or if it does not. + + + Gets the parent's . + The parent's . + + + Gets a value that indicates whether the W3CIdFlags.Recorded flag is set. + + if the W3CIdFlags.Recorded flag is set; otherwise, . + + + Gets the root ID of this . + The root ID, or if the current instance has either a or an . + + + Gets the activity source associated with this activity. + + + Gets the SPAN part of the . + The ID for the SPAN part of , if the has the W3C format; otherwise, a zero . + + + Gets the time when the operation started. + The UTC time that the operation started. + + + Gets status code of the current activity object. + + + Gets the status description of the current activity object. + + + Gets the list of tags that represent information to log along with the activity. This information is not passed on to the children of this activity. + A key-value pair enumeration of tags and objects. + + + Gets a collection of key/value pairs that represent information that will be logged along with the to the logging system. + Information that will be logged along with the to the logging system. + + + Gets the TraceId part of the . + The ID for the TraceId part of the , if the ID has the W3C format; otherwise, a zero TraceId. + + + When starting an Activity which does not have a parent context, the Trace Id will automatically be generated using random numbers. + TraceIdGenerator can be used to override the runtime's default Trace Id generation algorithm. + + + Gets or sets the W3C header. + The W3C header. + + + Enumerates the data stored on an object. + Type being enumerated. + + + Returns an enumerator that iterates through the data stored on an Activity object. + + . + + + Advances the enumerator to the next element of the data. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Gets the element at the current position of the enumerator. + + + Provides data for the event. + + + Gets the object after the event. + + + Gets the object before the event. + + + A representation that conforms to the W3C TraceContext specification. It contains two identifiers: a TraceId and a SpanId, along with a set of common TraceFlags and system-specific TraceState values. + + + Construct a new activity context instance using the specified arguments. + A trace identifier. + A span identifier. + Contain details about the trace. + Carries system-specific configuration data. + Indicates if the context is propagated from a remote parent. + + + Indicates whether the current object is equal to another object of the same type. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Determines whether this instance and a specified object have the same value. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Parses a W3C trace context headers to an object. + The W3C trace parent header. + The trace state. + The trace parent is invalid. + The object created from the parsing operation. + + + Tries to parse the W3C trace context headers to the object. + The W3C trace parent header. + The W3C trace state. + + to propagate the context from the remote parent; otherwise, . + When this method returns, contains the object created from the parsing operation. + + if the operation succeeds; otherwise. + + + Tries to parse the W3C trace context headers to an object. + The W3C trace parent header. + The W3C trace state. + When this method returns , the object created from the parsing operation. + + if the parsing was successful; otherwise. + + + Indicates if the activity context was propagated from a remote parent. + + if it was propagated from a remote parent; otherwise. + + + The Id of the request as known by the caller. + The Span Id in the context. + + + The flags defined by the W3C standard along with the ID for the activity. + The context tracing flags. + + + The trace identifier. + The tracing identifier in the context. + + + Holds the W3C 'tracestate' header. + A string representing the W3C 'tracestate' header. + + + Encapsulates all the information that is sent to the activity listener, to make decisions about the creation of the activity instance, as well as its state. + +The possible generic type parameters are or . + The type of the property. Should be either or . + + + Gets the activity kind which the activity will be created with. + One of the enumeration values that represent an activity kind. + + + Gets the enumeration of activity links that the activity will be created with. + An enumeration of activity links. + + + Gets the name to use as OperationName of the activity that will get created. + A string representing the activity name. + + + Gets the parent context or parent Id that the activity will get created with. + The parent of the activity, represented either as a or as an . + + + Gets the collection that is used to add more tags during the sampling process. The added tags are also added to the created Activity if it is decided that it should be created by the callbacks. + The Activity tags collection. + + + Gets the activity source that creates the activity. + An activity source object. + + + Gets the tags that the activity will be created with. + A key-value pair enumeration of tags associated with the activity. + + + Gets the trace Id to use in the Activity object if it is decided that it should be created by callbacks. + The trace Id. + + + Gets or initializes the trace state to use when creating the Activity. + + + Represents an event containing a name and a timestamp, as well as an optional list of tags. + + + Initializes a new activity event instance using the specified name and the current time as the event timestamp. + The event name. + + + Initializes a new activity event instance using the specified name, timestamp and tags. + The event name. + The event timestamp. Timestamp must only be used for the events that happened in the past, not at the moment of this call. + The event tags. + + + Enumerate the tags attached to this object. + + . + + + Gets the activity event name. + A string representing the activity event name. + + + Gets the collection of tags associated with the event. + A key-value pair enumeration containing the tags associated with the event. + + + Gets the activity event timestamp. + A datetime offset representing the activity event timestamp. + + + Specifies the format of the property. + + + The hierarchical format. + + + An unknown format. + + + The W3C format. + + + Describes the relationship between the activity, its parents and its children in a trace. + + + Outgoing request to the external component. + + + Output received from an external component. + + + Internal operation within an application, as opposed to operations with remote parents or children. This is the default value. + + + Output provided to external components. + + + Requests incoming from external component. + + + Activities may be linked to zero or more activity context instances that are causally related. + +Activity links can point to activity contexts inside a single trace or across different traces. + +Activity links can be used to represent batched operations where an activity was initiated by multiple initiating activities, each representing a single incoming item being processed in the batch. + + + Constructs a new activity link, which can be linked to an activity. + The trace activity context. + The key-value pair list of tags associated to the activity context. + + + Enumerate the tags attached to this object. + + . + + + Indicates whether the current activity link is equal to another activity link. + The activity link to compare. + + if the current activity link is equal to ; otherwise, . + + + Indicates whether the current activity link is equal to another object. + The object to compare. + + if the current activity link is equal to ; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Retrieves the activity context inside this activity link. + + + Retrieves the key-value pair enumeration of tags attached to the activity context. + An enumeration of tags attached to the activity context. + + + Allows listening to the start and stop activity events and gives the opportunity to decide creating an activity for sampling scenarios. + + + Construct a new activity listener object to start listeneing to the activity events. + + + Unregisters this activity listener object from listening to activity events. + + + Gets or sets the callback used to listen to the activity start event. + An activity callback instance used to listen to the activity start event. + + + Gets or sets the callback used to listen to the activity stop event. + An activity callback instance used to listen to the activity stop event. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that allows deciding if activity object events that were created using the activity source object should be listened or not. + + to listen events; otherwise. + + + Enumeration values used by to indicate the amount of data to collect for the related . Requesting more data causes a greater performance overhead. + + + The activity object should be populated with all the propagation information and also all other properties such as Links, Tags, and Events. Using this value causes to return . + + + The activity object should be populated the same as the case. Additionally, Activity.Recorded is set to . For activities using the W3C trace ids, this sets a flag bit in the ID that will be propagated downstream requesting that the trace is recorded everywhere. + + + The activity object does not need to be created. + + + The activity object needs to be created. It will have a Name, a Source, an Id and Baggage. Other properties are unnecessary and will be ignored by this listener. + + + Provides APIs to create and start objects and to register objects to listen to the events. + + + Constructs an activity source object with the specified . + The name of the activity source object. + The version of the component publishing the tracing info. + + + Adds a listener to the activity starting and stopping events. + The activity listener object to use for listening to the activity events. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity + The + The created object or if there is no any event listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + If the Activity object is created, it will not automatically start. Callers will need to call to start it. + The operation name of the Activity. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity. + The + The parent Id to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Disposes the activity source object, removes the current instance from the global list, and empties the listeners list. + + + Checks if there are any listeners for this activity source. + + if there is a listener registered for this activity source; otherwise, . + + + Creates and starts a new object if there is any listener to the Activity events, returns otherwise. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The optional start timestamp to set on the created Activity object. + The operation name of the Activity. + The created object or if there is no any listener. + + + Creates a new activity if there are active listeners for it, using the specified name and activity kind. + The operation name of the activity. + The activity kind. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent activity context, tags, optional activity link and optional start time. + The operation name of the activity. + The activity kind. + The parent object to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent Id, tags, optional activity links and optional start time. + The operation name of the activity. + The activity kind. + The parent Id to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Returns the activity source name. + A string that represents the activity source name. + + + Returns the activity source version. + A string that represents the activity source version. + + + Represents a formatted based on a W3C standard. + + + Copies the 8 bytes of the current to a specified span. + The span to which the 8 bytes of the SpanID are to be copied. + + + Creates a new value from a read-only span of eight bytes. + A read-only span of eight bytes. + + does not contain eight bytes. + The new span ID. + + + Creates a new value from a read-only span of 16 hexadecimal characters. + A span that contains 16 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new span ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new span ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new span ID. + + + Determines whether this instance and the specified instance have the same value. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + the current instance and a specified object, which also must be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the SpanId. + The hash code of the SpanId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the SpanId of is the same as the SpanId of ; otherwise, . + + + Determine whether two specified instances have unequal values. + The first instance to compare. + The second instance to compare. + + if the SpanId of is different from the SpanId of ; otherwise, . + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Define the status code of the Activity which indicate the status of the instrumented operation. + + + Status code indicating an error is encountered during the operation. + + + Status code indicating the operation has been validated and completed successfully. + + + Unset status code is the default value indicating the status code is not initialized. + + + ActivityTagsCollection is a collection class used to store tracing tags. + +This collection will be used with classes like and . + +This collection behaves as follows: +- The collection items will be ordered according to how they are added. +- Don't allow duplication of items with the same key. +- When using the indexer to store an item in the collection: + - If the item has a key that previously existed in the collection and the value is , the collection item matching the key will be removed from the collection. + - If the item has a key that previously existed in the collection and the value is not , the new item value will replace the old value stored in the collection. + - Otherwise, the item will be added to the collection. +- Add method will add a new item to the collection if an item doesn't already exist with the same key. Otherwise, it will throw an exception. + + + Create a new instance of the collection. + + + Create a new instance of the collection and store the input list items in the collection. + Initial list to store in the collection. + + + Adds an item to the collection. + Key and value pair of the tag to add to the collection. + + already exists in the list. + + is . + + + Adds a tag with the provided key and value to the collection. This collection doesn't allow adding two tags with the same key. + The tag key. + The tag value. + + + Removes all items from the collection. + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Determines whether the collection contains an element with the specified key. + The key to locate in the . + + if the collection contains tag with that key. otherwise. + + + Copies the elements of the collection to an array, starting at a particular array index. + The array that is the destination of the elements copied from collection. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator for the . + + + Removes the first occurrence of a specific item from the collection. + The tag key value pair to remove. + + if item was successfully removed from the collection; otherwise, . This method also returns if item is not found in the original collection. + + + Removes the tag with the specified key from the collection. + The tag key. + + if the item existed and removed. otherwise. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through the collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The tag key. + The tag value. + When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized. + + + Gets the number of elements contained in the collection. + The number of elements contained in the . + + + Gets a value indicating whether the collection is read-only. This always returns . + Always returns . + + + Gets or sets a specified collection item. + + When setting a value to this indexer property, the following behavior is observed: +- If the key previously existed in the collection and the value is , the collection item matching the key will get removed from the collection. +- If the key previously existed in the collection and the value is not , the value will replace the old value stored in the collection. +- Otherwise, a new item will get added to the collection. + The key of the value to get or set. + The object mapped to the key. + + + Get the list of the keys of all stored tags. + An containing the keys of the object that implements . + + + Get the list of the values of all stored tags. + An containing the values in the object that implements . + + + Enumerates the elements of an . + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Specifies flags defined by the W3C standard that are associated with an activity. + + + The activity has not been marked. + + + The activity (or more likely its parents) has been marked as useful to record. + + + Represents a whose format is based on a W3C standard. + + + Copies the 16 bytes of the current to a specified span. + The span to which the 16 bytes of the trace ID are to be copied. + + + Creates a new value from a read-only span of 16 bytes. + A read-only span of 16 bytes. + + does not contain eight bytes. + The new trace ID. + + + Creates a new value from a read-only span of 32 hexadecimal characters. + A span that contains 32 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new trace ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new trace ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new . + + + Determines whether the current instance and a specified are equal. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + Determines whether this instance and a specified object, which must also be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the TraceId. + The hash code of the TraceId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is the same as the TraceId of ; otherwise, . + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is different from the TraceId of ; otherwise, . + + + Returns a 32-character hexadecimal string that represents this span ID. + The 32-character hexadecimal string representation of this trace ID. + + + Returns a 32-character hexadecimal string that represents this trace ID. + The 32-character hexadecimal string representation of this trace ID. + + + Provides an implementation of the abstract class that represents a named place to which a source sends its information (events). + + + Creates a new . + The name of this . + + + Disposes the NotificationListeners. + + + Determines whether there are any registered subscribers. + + if there are any registered subscribers, otherwise. + + + Checks whether the is enabled. + The name of the event to check. + + if notifications are enabled; otherwise, . + + + Checks if any subscriber to the diagnostic events is interested in receiving events with this name. Subscribers indicate their interest using a delegate provided in . + The name of the event to check. + The object that represents a context. + The object that represents a context. + + if it is enabled, otherwise. + + + Invokes the OnActivityExport method of all the subscribers. + The activity affected by an external event. + An object that represents the outgoing request. + + + Invokes the OnActivityImport method of all the subscribers. + The activity affected by an external event. + An object that represents the incoming request. + + + Adds a subscriber. + A subscriber. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name and up to two context objects. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or to if an event filter is not desirable. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, optionally filters events based on their name and up to two context objects, and specifies methods to call when providers import or export activites from outside the process. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or if an event filter is not desirable. + An action delegate that receives the activity affected by an external event and an object that represents the incoming request. + An action delegate that receives the activity affected by an external event and an object that represents the outgoing request. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name. + A subscriber. + A delegate that filters events based on their name (). The delegate should return if the event is enabled. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Returns a string with the name of this DiagnosticListener. + The name of this DiagnosticListener. + + + Logs a notification. + The name of the event to log. + An object that represents the payload for the event. + + + Gets the collection of listeners for this . + + + Gets the name of this . + The name of the . + + + An abstract class that allows code to be instrumented for production-time logging of rich data payloads for consumption within the process that was instrumented. + + + Initializes an instance of the class. + + + Verifies if the notification event is enabled. + The name of the event being written. + + if the notification event is enabled, otherwise. + + + Verifies it the notification event is enabled. + The name of the event being written. + An object that represents the additional context for IsEnabled. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) to check if consumer wants to get notifications for such events at all. Based on that, producer may call IsEnabled(string, object, object) again with non- context. + Optional. An object that represents the additional context for IsEnabled. by default. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) or producer passed all necessary context in . + + if the notification event is enabled, otherwise. + + + Transfers state from an activity to some event or operation, such as an outgoing HTTP request, that will occur outside the process. + The activity affected by an external event. + An object that represents the outgoing request. + + + Transfers state to an activity from some event or operation, such as an incoming request, that occurred outside the process. + The activity affected by an external event. + A payload that represents the incoming request. + + + Starts an and writes a start event. + The to be started. + An object that represent the value being passed as a payload for the event. + The started activity for convenient chaining. + + + + + + + + Stops the given , maintains the global activity, and notifies consumers that the was stopped. + The activity to be stopped. + An object that represents the value passed as a payload for the event. + + + + + + + + Provides a generic way of logging complex payloads. + The name of the event being written. + An object that represents the value being passed as a payload for the event. This is often an anonymous type which contains several sub-values. + + + + + + + + An implementation of determines if and how distributed context information is encoded and decoded as it traverses the network. + The encoding can be transported over any network protocol that supports string key-value pairs. For example, when using HTTP, each key-value pair is an HTTP header. + injects values into and extracts values from carriers as string key-value pairs. + + + Initializes an instance of the class. This constructor is protected and only meant to be called from parent classes. + + + Returns the default propagator object that will be initialized with. + An instance of the class. + + + Returns a propagator that does not transmit any distributed context information in outbound network messages. + An instance of the class. + + + Returns a propagator that attempts to act transparently, emitting the same data on outbound network requests that was received on the inbound request. + When encoding the outbound message, this propagator uses information from the request's root Activity, ignoring any intermediate Activities that may have been created while processing the request. + An instance of the class. + + + Extracts the baggage key-value pair list from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation baggage list from the carrier. + Returns the extracted key-value pair list from the carrier. + + + Extracts the trace ID and trace state from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation trace ID and state from the carrier. + When this method returns, contains the trace ID extracted from the carrier. + When this method returns, contains the trace state extracted from the carrier. + + + Injects the trace values stored in the object into a carrier. For example, into the headers of an HTTP request. + The Activity object has the distributed context to inject to the carrier. + The medium in which the distributed context will be stored. + The callback method to invoke to set a named key-value pair on the carrier. + + + Get or set the process-wide propagator object to use as the current selected propagator. + The currently selected process-wide propagator object. + + + Gets the set of field names this propagator is likely to read or write. + The list of fields that will be used by the DistributedContextPropagator. + + + Represents the callback method that's used in the extract methods of propagators. The callback is invoked to look up the value of a named field. + The medium used by propagators to read values from. + The propagation field name. + When this method returns, contains the value that corresponds to . The value is non- if there is only one value for the input field name. + When this method returns, contains a collection of values that correspond to . The value is non- if there is more than one value for the input field name. + + + Represents the callback method that's used in propagators' inject methods. This callback is invoked to set the value of a named field. + Propagators may invoke it multiple times in order to set multiple fields. + The medium used by propagators to write values to. + The propagation field name. + The value corresponding to . + + + Represents an instrument that supports adding non-negative values. For example, you might call counter.Add(1) each time a request is processed to track the total number of requests. Most metric viewers display counters using a rate (requests/sec), by default, but can also display a cumulative total. + The type that the counter represents. + + + Records the increment value of the measurement. + The increment measurement. + + + Records the increment value of the measurement. + The increment measurement. + A key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A list of key-value pair tags associated with the measurement. + + + Adds the increment value of the measurement. + The measurement value. + The tags associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A span of key-value pair tags associated with the measurement. + + + Represents a metrics instrument that can be used to report arbitrary values that are likely to be statistically meaningful, for example, the request duration. Call to create a Histogram object. + The type that the histogram represents. + + + Records a measurement value. + The measurement value. + + + Records a measurement value. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A list of key-value pair tags associated with the measurement. + + + Records a measurement value. + The measurement value. + The tags associated with the measurement. + + + Records a measurement value. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + + + + + Base class of all metrics instrument classes + + + Protected constructor to initialize the common instrument properties like the meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Activates the instrument to start recording measurements and to allow listeners to start listening to such measurements. + + + Gets the instrument description. + + + Gets a value that indicates if there are any listeners for this instrument. + + + Gets a value that indicates whether the instrument is an observable instrument. + + + Gets the Meter that created the instrument. + + + Gets the instrument name. + + + + Gets the instrument unit of measurements. + + + The base class for all non-observable instruments. + The type that the instrument represents. + + + Create the metrics instrument using the properties meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + The tags associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + Stores one observed metrics value and its associated tags. This type is used by an Observable instrument's Observe() method when reporting current measurements. + The type that the measurement represents. + + + Initializes a new instance of using the specified value. + The measurement value. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Gets the measurement tags list. + + + Gets the measurement value. + + + A delegate to represent the Meterlistener callbacks that are used when recording measurements. + The instrument that sent the measurement. + The measurement value. + A span of key-value pair tags associated with the measurement. + The state object originally passed to method. + The type that the measurement represents. + + + Meter is the class responsible for creating and tracking the Instruments. + + + + + + Initializes a new instance of using the specified meter name. + The Meter name. + + + Initializes a new instance of using the specified meter name and version. + The Meter name. + The optional Meter version. + + + + + + + + + Create a metrics Counter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new counter. + + + + + + + + + + Creates a Histogram, which is an instrument that can be used to report arbitrary values that are likely to be statistically meaningful. It is intended for statistics such as histograms, summaries, and percentiles. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new histogram. + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement.. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Create a metrics UpDownCounter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new up down counter. + + + + + + + + + + Dispose the Meter which will disable all instruments created by this meter. + + + + + + Gets the Meter name. + The Meter name + + + + + Gets the Meter version. + The Meter version. + + + + + + + + + + The MeterListener is class used to listen to the metrics instrument measurements recording. + + + Initializes a new instance of the class. + + + Stops listening to a specific instrument measurement recording. + The instrument to stop listening to. + The state object originally passed to method. + + + Disposes the listeners which will stop it from listening to any instrument. + + + Starts listening to a specific instrument measurement recording. + The instrument to listen to. + A state object that will be passed back to the callback getting measurements events. + + + Calls all Observable instruments that the listener is listening to, and calls with every collected measurement. + + + Sets a callback for a specific numeric type to get the measurement recording notification from all instruments which enabled listening and was created with the same specified numeric type. + If a measurement of type T is recorded and a callback of type T is registered, that callback will be used. + The callback which can be used to get measurement recording of numeric type T. + The type of the numeric measurement. + + + Enables the listener to start listening to instruments measurement recording. + + + Gets or sets the callback to get notified when an instrument is published. + The callback to get notified when an instrument is published. + + + Gets or sets the callback to get notified when the measurement is stopped on some instrument. + This can happen when the Meter or the Listener is disposed or calling on the listener. + The callback to get notified when the measurement is stopped on some instrument. + + + + + + + + + + + Represents a metrics-observable instrument that reports monotonically increasing values when the instrument is being observed, for example, CPU time (for different processes, threads, user mode, or kernel mode). Call to create the observable counter object. + The type that the observable counter represents. + + + Represents an observable instrument that reports non-additive values when the instrument is being observed, for example, the current room temperature. Call to create the observable counter object. + + + + ObservableInstrument{T} is the base class from which all metrics observable instruments will inherit. + The type that the observable instrument represents. + + + Initializes a new instance of the class using the specified meter, name, description, and unit. + All classes that extend ObservableInstrument{T} must call this constructor when constructing objects of the extended class. + The meter that created the instrument. + The instrument name. cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Fetches the current measurements being tracked by this instrument. All classes extending ObservableInstrument{T} need to implement this method. + The current measurements tracked by this instrument. + + + Gets a value that indicates if the instrument is an observable instrument. + + if the instrument is metrics-observable; otherwise. + + + A metrics-observable instrument that reports increasing or decreasing values when the instrument is being observed. +Use this instrument to monitor the process heap size or the approximate number of items in a lock-free circular buffer, for example. +To create an ObservableUpDownCounter object, use the methods. + The type that the counter represents. + + + An instrument that supports reporting positive or negative metric values. + UpDownCounter may be used in scenarios like reporting the change in active requests or queue size. + The type that the UpDownCounter represents. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A list of key-value pair tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A of tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A span of key-value pair tags associated with the measurement. + + + A delegate that defines the signature of the callbacks used in the sampling process. + The Activity creation options used by callbacks to decide creating the Activity object or not. + The type of the requested parent to create the Activity object with. Should be either a string or an instance. + An object containing the sampling results, which indicate the amount of data to collect for the related . + + + Represents a list of tags that can be accessed by index. Provides methods to search, sort, and manipulate lists. + + + Initializes a new instance of using the specified . + A span of tags to initialize the list with. + + + Adds a tag to the list. + The key-value pair of the tag to add to the list. + + + Adds a tag with the specified and to the list. + The tag key. + The tag value. + + + Removes all elements from the . + + + Determines whether a tag is in the . + The tag to locate in the . + + if item is found in the ; otherwise, . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional Array that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0 or greater than or equal to the length. + + + Copies the contents of this into a destination span. + The destination object. + + The number of elements in the source is greater than the number of elements that the destination span. + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Searches for the specified tag and returns the zero-based index of the first occurrence within the entire . + The tag to locate in the . + The zero-based index of the first ocurrence of in the tag list. + + + Inserts an element into the at the specified index. + The zero-based index at which the item should be inserted. + The tag to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific object from the . + The tag to remove from the . + + if is successfully removed; otherwise, . This method also returns if was not found in the . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + index is less than 0 or is greater than . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Gets the number of tags contained in the . + The number of elements contained in the . + + + Gets a value indicating whether the is read-only. This property will always return . + + Always returns . + + + Gets or sets the tags at the specified index. + The item index. + + is not a valid index in the . + The element at the specified index. + + + An enumerator for traversing a tag list collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + \ No newline at end of file diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll new file mode 100644 index 0000000..10271c8 Binary files /dev/null and b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll differ diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml new file mode 100644 index 0000000..d94e6d2 --- /dev/null +++ b/packages/System.Diagnostics.DiagnosticSource.8.0.0/lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml @@ -0,0 +1,1886 @@ + + + + System.Diagnostics.DiagnosticSource + + + + Represents an operation with context to be used for logging. + + + Occurs when the value changes. + + + Initializes a new instance of the class. + The name of the operation. + + + Updates the to have a new baggage item with the specified key and value. + The baggage key. + The baggage value. + + for convenient chaining. + + + Adds the specified activity event to the events list. + The activity event to add. + + for convenient chaining. + + + Updates the activity to have a tag with an additional and . + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Updates the to have a new tag with the provided and . + The tag key. + The tag value. + + for convenient chaining. + + + Stops the activity if it is already started and notifies any event listeners. Nothing will happen otherwise. + + + When overriden by a derived type, this method releases any allocated resources. + + if the method is being called from the finalizer; if calling from user code. + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the objects attached to this Activity object. + + . + + + Enumerates the tags attached to this Activity object. + + . + + + Returns the value of a key-value pair added to the activity with . + The baggage key. + The value of the key-value-pair item if it exists, or if it does not exist. + + + Returns the object mapped to the specified property name. + The name associated to the object. + The object mapped to the property name, if one is found; otherwise, . + + + Returns the value of the Activity tag mapped to the input key/>. + Returns if that key does not exist. + The tag key string. + The tag value mapped to the input key. + + + Add or update the Activity baggage with the input key and value. + If the input value is - if the collection has any baggage with the same key, then this baggage will get removed from the collection. + - otherwise, nothing will happen and the collection will not change. + If the input value is not - if the collection has any baggage with the same key, then the value mapped to this key will get updated with the new input value. + - otherwise, the key and value will get added as a new baggage to the collection. + Baggage item will be updated/removed only if it was originaly added to the current activity. Items inherited from the parents will not be changed/removed, new item would be added to current activity baggage instead. + The baggage key name + The baggage value mapped to the input key + + for convenient chaining. + + + Attaches any custom object to this activity. If the specified was previously associated with another object, the property will be updated to be associated with the new instead. It is recommended to use a unique property name to avoid conflicts with anyone using the same value. + The name to associate the value with. + The object to attach and map to the property name. + + + Updates the to set its as the difference between and the specified stop time. + The UTC stop time. + + for convenient chaining. + + + Sets the ID format on this before it is started. + One of the enumeration values that specifies the format of the property. + + for convenient chaining. + + + Sets the parent ID using the W3C convention of a TraceId and a SpanId. + The parent activity's TraceId. + The parent activity's SpanId. + One of the enumeration values that specifies flags defined by the W3C standard that are associated with an activity. + + for convenient chaining. + + + Updates this to indicate that the with an ID of caused this . + The ID of the parent operation. + + for convenient chaining. + + + Sets the start time of this . + The start time in UTC. + + for convenient chaining. + + + Sets the status code and description on the current activity object. + The status code + The error status description + + for convenient chaining. + + + Adds or update the activity tag with the input key and value. + The tag key name. + The tag value mapped to the input key. + + for convenient chaining. + + + Starts the activity. + + for convenient chaining. + + + Stops the activity. + + + Gets or sets the flags (defined by the W3C ID specification) associated with the activity. + the flags associated with the activity. + + + Gets a collection of key/value pairs that represents information that is passed to children of this . + Information that's passed to children of this . + + + Gets the context of the activity. Context becomes valid only if the activity has been started. + The context of the activity, if the activity has been started; otherwise, returns the default context. + + + Gets or sets the current operation () for the current thread. This flows across async calls. + The current operation for the current thread. + + + Gets or sets the default ID format for the . + + + Gets or sets the display name of the activity. + A string that represents the activity display name. + + + Gets the duration of the operation. + The delta between and the end time if the has ended ( or was called), or if the has not ended and was not called. + + + Gets the list of all the activity events attached to this activity. + An enumeration of activity events attached to this activity. If the activity has no events, returns an empty enumeration. + + + Gets or sets a value that detrmines if the is always used to define the default ID format. + + to always use the ; otherwise, . + + + Gets a value that indicates whether the parent context was created from remote propagation. + + + Gets an identifier that is specific to a particular request. + The activity ID. + + + Gets the format for the . + The format for the . + + + Gets or sets a value that indicates whether this activity should be populated with all the propagation information, as well as all the other properties, such as links, tags, and events. + + if the activity should be populated; otherwise. + + + Gets a value that indicates whether this object is stopped or not. + + + Gets the relationship between the activity, its parents, and its children in a trace. + One of the enumeration values that indicate relationship between the activity, its parents, and its children in a trace. + + + Gets the list of all the activity links attached to this activity. + An enumeration of activity links attached to this activity. If the activity has no links, returns an empty enumeration. + + + Gets the operation name. + The name of the operation. + + + Gets the parent that created this activity. + The parent of this , if it is from the same process, or if this instance has no parent (it is a root activity) or if the parent is from outside the process. + + + Gets the ID of this activity's parent. + The parent ID, if one exists, or if it does not. + + + Gets the parent's . + The parent's . + + + Gets a value that indicates whether the W3CIdFlags.Recorded flag is set. + + if the W3CIdFlags.Recorded flag is set; otherwise, . + + + Gets the root ID of this . + The root ID, or if the current instance has either a or an . + + + Gets the activity source associated with this activity. + + + Gets the SPAN part of the . + The ID for the SPAN part of , if the has the W3C format; otherwise, a zero . + + + Gets the time when the operation started. + The UTC time that the operation started. + + + Gets status code of the current activity object. + + + Gets the status description of the current activity object. + + + Gets the list of tags that represent information to log along with the activity. This information is not passed on to the children of this activity. + A key-value pair enumeration of tags and objects. + + + Gets a collection of key/value pairs that represent information that will be logged along with the to the logging system. + Information that will be logged along with the to the logging system. + + + Gets the TraceId part of the . + The ID for the TraceId part of the , if the ID has the W3C format; otherwise, a zero TraceId. + + + When starting an Activity which does not have a parent context, the Trace Id will automatically be generated using random numbers. + TraceIdGenerator can be used to override the runtime's default Trace Id generation algorithm. + + + Gets or sets the W3C header. + The W3C header. + + + Enumerates the data stored on an object. + Type being enumerated. + + + Returns an enumerator that iterates through the data stored on an Activity object. + + . + + + Advances the enumerator to the next element of the data. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Gets the element at the current position of the enumerator. + + + Provides data for the event. + + + Gets the object after the event. + + + Gets the object before the event. + + + A representation that conforms to the W3C TraceContext specification. It contains two identifiers: a TraceId and a SpanId, along with a set of common TraceFlags and system-specific TraceState values. + + + Construct a new activity context instance using the specified arguments. + A trace identifier. + A span identifier. + Contain details about the trace. + Carries system-specific configuration data. + Indicates if the context is propagated from a remote parent. + + + Indicates whether the current object is equal to another object of the same type. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Determines whether this instance and a specified object have the same value. + The object to compare to this instance. + + if the current object is equal to the parameter; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Parses a W3C trace context headers to an object. + The W3C trace parent header. + The trace state. + The trace parent is invalid. + The object created from the parsing operation. + + + Tries to parse the W3C trace context headers to the object. + The W3C trace parent header. + The W3C trace state. + + to propagate the context from the remote parent; otherwise, . + When this method returns, contains the object created from the parsing operation. + + if the operation succeeds; otherwise. + + + Tries to parse the W3C trace context headers to an object. + The W3C trace parent header. + The W3C trace state. + When this method returns , the object created from the parsing operation. + + if the parsing was successful; otherwise. + + + Indicates if the activity context was propagated from a remote parent. + + if it was propagated from a remote parent; otherwise. + + + The Id of the request as known by the caller. + The Span Id in the context. + + + The flags defined by the W3C standard along with the ID for the activity. + The context tracing flags. + + + The trace identifier. + The tracing identifier in the context. + + + Holds the W3C 'tracestate' header. + A string representing the W3C 'tracestate' header. + + + Encapsulates all the information that is sent to the activity listener, to make decisions about the creation of the activity instance, as well as its state. + +The possible generic type parameters are or . + The type of the property. Should be either or . + + + Gets the activity kind which the activity will be created with. + One of the enumeration values that represent an activity kind. + + + Gets the enumeration of activity links that the activity will be created with. + An enumeration of activity links. + + + Gets the name to use as OperationName of the activity that will get created. + A string representing the activity name. + + + Gets the parent context or parent Id that the activity will get created with. + The parent of the activity, represented either as a or as an . + + + Gets the collection that is used to add more tags during the sampling process. The added tags are also added to the created Activity if it is decided that it should be created by the callbacks. + The Activity tags collection. + + + Gets the activity source that creates the activity. + An activity source object. + + + Gets the tags that the activity will be created with. + A key-value pair enumeration of tags associated with the activity. + + + Gets the trace Id to use in the Activity object if it is decided that it should be created by callbacks. + The trace Id. + + + Gets or initializes the trace state to use when creating the Activity. + + + Represents an event containing a name and a timestamp, as well as an optional list of tags. + + + Initializes a new activity event instance using the specified name and the current time as the event timestamp. + The event name. + + + Initializes a new activity event instance using the specified name, timestamp and tags. + The event name. + The event timestamp. Timestamp must only be used for the events that happened in the past, not at the moment of this call. + The event tags. + + + Enumerate the tags attached to this object. + + . + + + Gets the activity event name. + A string representing the activity event name. + + + Gets the collection of tags associated with the event. + A key-value pair enumeration containing the tags associated with the event. + + + Gets the activity event timestamp. + A datetime offset representing the activity event timestamp. + + + Specifies the format of the property. + + + The hierarchical format. + + + An unknown format. + + + The W3C format. + + + Describes the relationship between the activity, its parents and its children in a trace. + + + Outgoing request to the external component. + + + Output received from an external component. + + + Internal operation within an application, as opposed to operations with remote parents or children. This is the default value. + + + Output provided to external components. + + + Requests incoming from external component. + + + Activities may be linked to zero or more activity context instances that are causally related. + +Activity links can point to activity contexts inside a single trace or across different traces. + +Activity links can be used to represent batched operations where an activity was initiated by multiple initiating activities, each representing a single incoming item being processed in the batch. + + + Constructs a new activity link, which can be linked to an activity. + The trace activity context. + The key-value pair list of tags associated to the activity context. + + + Enumerate the tags attached to this object. + + . + + + Indicates whether the current activity link is equal to another activity link. + The activity link to compare. + + if the current activity link is equal to ; otherwise, . + + + Indicates whether the current activity link is equal to another object. + The object to compare. + + if the current activity link is equal to ; otherwise, . + + + Provides a hash function for the current that's suitable for hashing algorithms and data structures, such as hash tables. + A hash code for the current . + + + Determines whether two specified values are equal. + The first value to compare. + The second value to compare. + + if and are equal; otherwise, . + + + Determines whether two specified values are not equal. + The first value to compare. + The second value to compare. + + if and are not equal; otherwise, . + + + Retrieves the activity context inside this activity link. + + + Retrieves the key-value pair enumeration of tags attached to the activity context. + An enumeration of tags attached to the activity context. + + + Allows listening to the start and stop activity events and gives the opportunity to decide creating an activity for sampling scenarios. + + + Construct a new activity listener object to start listeneing to the activity events. + + + Unregisters this activity listener object from listening to activity events. + + + Gets or sets the callback used to listen to the activity start event. + An activity callback instance used to listen to the activity start event. + + + Gets or sets the callback used to listen to the activity stop event. + An activity callback instance used to listen to the activity stop event. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that is used to decide if creating objects with a specific data state is allowed. + A sample activity instance. + + + Gets or sets the callback that allows deciding if activity object events that were created using the activity source object should be listened or not. + + to listen events; otherwise. + + + Enumeration values used by to indicate the amount of data to collect for the related . Requesting more data causes a greater performance overhead. + + + The activity object should be populated with all the propagation information and also all other properties such as Links, Tags, and Events. Using this value causes to return . + + + The activity object should be populated the same as the case. Additionally, Activity.Recorded is set to . For activities using the W3C trace ids, this sets a flag bit in the ID that will be propagated downstream requesting that the trace is recorded everywhere. + + + The activity object does not need to be created. + + + The activity object needs to be created. It will have a Name, a Source, an Id and Baggage. Other properties are unnecessary and will be ignored by this listener. + + + Provides APIs to create and start objects and to register objects to listen to the events. + + + Constructs an activity source object with the specified . + The name of the activity source object. + The version of the component publishing the tracing info. + + + Adds a listener to the activity starting and stopping events. + The activity listener object to use for listening to the activity events. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity + The + The created object or if there is no any event listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + If the Activity object is created, it will not automatically start. Callers will need to call to start it. + The operation name of the Activity. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Creates a new object if there is any listener to the Activity, returns otherwise. + The operation name of the Activity. + The + The parent Id to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The default Id format to use. + The created object or if there is no any listener. + + + Disposes the activity source object, removes the current instance from the global list, and empties the listeners list. + + + Checks if there are any listeners for this activity source. + + if there is a listener registered for this activity source; otherwise, . + + + Creates and starts a new object if there is any listener to the Activity events, returns otherwise. + The + The parent object to initialize the created Activity object with. + The optional tags list to initialize the created Activity object with. + The optional list to initialize the created Activity object with. + The optional start timestamp to set on the created Activity object. + The operation name of the Activity. + The created object or if there is no any listener. + + + Creates a new activity if there are active listeners for it, using the specified name and activity kind. + The operation name of the activity. + The activity kind. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent activity context, tags, optional activity link and optional start time. + The operation name of the activity. + The activity kind. + The parent object to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Creates a new activity if there are active listeners for it, using the specified name, activity kind, parent Id, tags, optional activity links and optional start time. + The operation name of the activity. + The activity kind. + The parent Id to initialize the created activity object with. + The optional tags list to initialize the created activity object with. + The optional list to initialize the created activity object with. + The optional start timestamp to set on the created activity object. + The created activity object, if it had active listeners, or if it has no event listeners. + + + Returns the activity source name. + A string that represents the activity source name. + + + Returns the activity source version. + A string that represents the activity source version. + + + Represents a formatted based on a W3C standard. + + + Copies the 8 bytes of the current to a specified span. + The span to which the 8 bytes of the SpanID are to be copied. + + + Creates a new value from a read-only span of eight bytes. + A read-only span of eight bytes. + + does not contain eight bytes. + The new span ID. + + + Creates a new value from a read-only span of 16 hexadecimal characters. + A span that contains 16 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new span ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new span ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new span ID. + + + Determines whether this instance and the specified instance have the same value. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + the current instance and a specified object, which also must be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the SpanId. + The hash code of the SpanId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the SpanId of is the same as the SpanId of ; otherwise, . + + + Determine whether two specified instances have unequal values. + The first instance to compare. + The second instance to compare. + + if the SpanId of is different from the SpanId of ; otherwise, . + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Returns a 16-character hexadecimal string that represents this span ID. + The 16-character hexadecimal string representation of this span ID. + + + Define the status code of the Activity which indicate the status of the instrumented operation. + + + Status code indicating an error is encountered during the operation. + + + Status code indicating the operation has been validated and completed successfully. + + + Unset status code is the default value indicating the status code is not initialized. + + + ActivityTagsCollection is a collection class used to store tracing tags. + +This collection will be used with classes like and . + +This collection behaves as follows: +- The collection items will be ordered according to how they are added. +- Don't allow duplication of items with the same key. +- When using the indexer to store an item in the collection: + - If the item has a key that previously existed in the collection and the value is , the collection item matching the key will be removed from the collection. + - If the item has a key that previously existed in the collection and the value is not , the new item value will replace the old value stored in the collection. + - Otherwise, the item will be added to the collection. +- Add method will add a new item to the collection if an item doesn't already exist with the same key. Otherwise, it will throw an exception. + + + Create a new instance of the collection. + + + Create a new instance of the collection and store the input list items in the collection. + Initial list to store in the collection. + + + Adds an item to the collection. + Key and value pair of the tag to add to the collection. + + already exists in the list. + + is . + + + Adds a tag with the provided key and value to the collection. This collection doesn't allow adding two tags with the same key. + The tag key. + The tag value. + + + Removes all items from the collection. + + + Determines whether the contains a specific value. + The object to locate in the . + + if is found in the ; otherwise, . + + + Determines whether the collection contains an element with the specified key. + The key to locate in the . + + if the collection contains tag with that key. otherwise. + + + Copies the elements of the collection to an array, starting at a particular array index. + The array that is the destination of the elements copied from collection. + The zero-based index in array at which copying begins. + + + Returns an enumerator that iterates through the collection. + An enumerator for the . + + + Removes the first occurrence of a specific item from the collection. + The tag key value pair to remove. + + if item was successfully removed from the collection; otherwise, . This method also returns if item is not found in the original collection. + + + Removes the tag with the specified key from the collection. + The tag key. + + if the item existed and removed. otherwise. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through the collection. + An object that can be used to iterate through the collection. + + + Gets the value associated with the specified key. + The tag key. + The tag value. + When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized. + + + Gets the number of elements contained in the collection. + The number of elements contained in the . + + + Gets a value indicating whether the collection is read-only. This always returns . + Always returns . + + + Gets or sets a specified collection item. + + When setting a value to this indexer property, the following behavior is observed: +- If the key previously existed in the collection and the value is , the collection item matching the key will get removed from the collection. +- If the key previously existed in the collection and the value is not , the value will replace the old value stored in the collection. +- Otherwise, a new item will get added to the collection. + The key of the value to get or set. + The object mapped to the key. + + + Get the list of the keys of all stored tags. + An containing the keys of the object that implements . + + + Get the list of the values of all stored tags. + An containing the values in the object that implements . + + + Enumerates the elements of an . + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Specifies flags defined by the W3C standard that are associated with an activity. + + + The activity has not been marked. + + + The activity (or more likely its parents) has been marked as useful to record. + + + Represents a whose format is based on a W3C standard. + + + Copies the 16 bytes of the current to a specified span. + The span to which the 16 bytes of the trace ID are to be copied. + + + Creates a new value from a read-only span of 16 bytes. + A read-only span of 16 bytes. + + does not contain eight bytes. + The new trace ID. + + + Creates a new value from a read-only span of 32 hexadecimal characters. + A span that contains 32 hexadecimal characters. + + does not contain 16 hexadecimal characters. + +-or- + +The characters in are not all lower-case hexadecimal characters or all zeros. + The new trace ID. + + + Creates a new value from a read-only span of UTF8-encoded bytes. + A read-only span of UTF8-encoded bytes. + The new trace ID. + + + Creates a new based on a random number (that is very likely to be unique). + The new . + + + Determines whether the current instance and a specified are equal. + The instance to compare. + + if has the same hex value as the current instance; otherwise, . + + + Determines whether this instance and a specified object, which must also be an instance, have the same value. + The object to compare. + + if is an instance of and has the same hex value as the current instance; otherwise, . + + + Returns the hash code of the TraceId. + The hash code of the TraceId. + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is the same as the TraceId of ; otherwise, . + + + Determines whether two specified instances have the same value. + The first instance to compare. + The second instance to compare. + + if the TraceId of is different from the TraceId of ; otherwise, . + + + Returns a 32-character hexadecimal string that represents this span ID. + The 32-character hexadecimal string representation of this trace ID. + + + Returns a 32-character hexadecimal string that represents this trace ID. + The 32-character hexadecimal string representation of this trace ID. + + + Provides an implementation of the abstract class that represents a named place to which a source sends its information (events). + + + Creates a new . + The name of this . + + + Disposes the NotificationListeners. + + + Determines whether there are any registered subscribers. + + if there are any registered subscribers, otherwise. + + + Checks whether the is enabled. + The name of the event to check. + + if notifications are enabled; otherwise, . + + + Checks if any subscriber to the diagnostic events is interested in receiving events with this name. Subscribers indicate their interest using a delegate provided in . + The name of the event to check. + The object that represents a context. + The object that represents a context. + + if it is enabled, otherwise. + + + Invokes the OnActivityExport method of all the subscribers. + The activity affected by an external event. + An object that represents the outgoing request. + + + Invokes the OnActivityImport method of all the subscribers. + The activity affected by an external event. + An object that represents the incoming request. + + + Adds a subscriber. + A subscriber. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name and up to two context objects. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or to if an event filter is not desirable. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, optionally filters events based on their name and up to two context objects, and specifies methods to call when providers import or export activites from outside the process. + A subscriber. + A delegate that filters events based on their name and up to two context objects (which can be ), or if an event filter is not desirable. + An action delegate that receives the activity affected by an external event and an object that represents the incoming request. + An action delegate that receives the activity affected by an external event and an object that represents the outgoing request. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Adds a subscriber, and optionally filters events based on their name. + A subscriber. + A delegate that filters events based on their name (). The delegate should return if the event is enabled. + A reference to an interface that allows the listener to stop receiving notifications before the has finished sending them. + + + Returns a string with the name of this DiagnosticListener. + The name of this DiagnosticListener. + + + Logs a notification. + The name of the event to log. + An object that represents the payload for the event. + + + Gets the collection of listeners for this . + + + Gets the name of this . + The name of the . + + + An abstract class that allows code to be instrumented for production-time logging of rich data payloads for consumption within the process that was instrumented. + + + Initializes an instance of the class. + + + Verifies if the notification event is enabled. + The name of the event being written. + + if the notification event is enabled, otherwise. + + + Verifies it the notification event is enabled. + The name of the event being written. + An object that represents the additional context for IsEnabled. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) to check if consumer wants to get notifications for such events at all. Based on that, producer may call IsEnabled(string, object, object) again with non- context. + Optional. An object that represents the additional context for IsEnabled. by default. Consumers should expect to receive which may indicate that producer called pure IsEnabled(string) or producer passed all necessary context in . + + if the notification event is enabled, otherwise. + + + Transfers state from an activity to some event or operation, such as an outgoing HTTP request, that will occur outside the process. + The activity affected by an external event. + An object that represents the outgoing request. + + + Transfers state to an activity from some event or operation, such as an incoming request, that occurred outside the process. + The activity affected by an external event. + A payload that represents the incoming request. + + + Starts an and writes a start event. + The to be started. + An object that represent the value being passed as a payload for the event. + The started activity for convenient chaining. + + + + + + + + Stops the given , maintains the global activity, and notifies consumers that the was stopped. + The activity to be stopped. + An object that represents the value passed as a payload for the event. + + + + + + + + Provides a generic way of logging complex payloads. + The name of the event being written. + An object that represents the value being passed as a payload for the event. This is often an anonymous type which contains several sub-values. + + + + + + + + An implementation of determines if and how distributed context information is encoded and decoded as it traverses the network. + The encoding can be transported over any network protocol that supports string key-value pairs. For example, when using HTTP, each key-value pair is an HTTP header. + injects values into and extracts values from carriers as string key-value pairs. + + + Initializes an instance of the class. This constructor is protected and only meant to be called from parent classes. + + + Returns the default propagator object that will be initialized with. + An instance of the class. + + + Returns a propagator that does not transmit any distributed context information in outbound network messages. + An instance of the class. + + + Returns a propagator that attempts to act transparently, emitting the same data on outbound network requests that was received on the inbound request. + When encoding the outbound message, this propagator uses information from the request's root Activity, ignoring any intermediate Activities that may have been created while processing the request. + An instance of the class. + + + Extracts the baggage key-value pair list from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation baggage list from the carrier. + Returns the extracted key-value pair list from the carrier. + + + Extracts the trace ID and trace state from an incoming request represented by the carrier. For example, from the headers of an HTTP request. + The medium from which values will be read. + The callback method to invoke to get the propagation trace ID and state from the carrier. + When this method returns, contains the trace ID extracted from the carrier. + When this method returns, contains the trace state extracted from the carrier. + + + Injects the trace values stored in the object into a carrier. For example, into the headers of an HTTP request. + The Activity object has the distributed context to inject to the carrier. + The medium in which the distributed context will be stored. + The callback method to invoke to set a named key-value pair on the carrier. + + + Get or set the process-wide propagator object to use as the current selected propagator. + The currently selected process-wide propagator object. + + + Gets the set of field names this propagator is likely to read or write. + The list of fields that will be used by the DistributedContextPropagator. + + + Represents the callback method that's used in the extract methods of propagators. The callback is invoked to look up the value of a named field. + The medium used by propagators to read values from. + The propagation field name. + When this method returns, contains the value that corresponds to . The value is non- if there is only one value for the input field name. + When this method returns, contains a collection of values that correspond to . The value is non- if there is more than one value for the input field name. + + + Represents the callback method that's used in propagators' inject methods. This callback is invoked to set the value of a named field. + Propagators may invoke it multiple times in order to set multiple fields. + The medium used by propagators to write values to. + The propagation field name. + The value corresponding to . + + + Represents an instrument that supports adding non-negative values. For example, you might call counter.Add(1) each time a request is processed to track the total number of requests. Most metric viewers display counters using a rate (requests/sec), by default, but can also display a cumulative total. + The type that the counter represents. + + + Records the increment value of the measurement. + The increment measurement. + + + Records the increment value of the measurement. + The increment measurement. + A key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A list of key-value pair tags associated with the measurement. + + + Adds the increment value of the measurement. + The measurement value. + The tags associated with the measurement. + + + Records the increment value of the measurement. + The increment measurement. + A span of key-value pair tags associated with the measurement. + + + Represents a metrics instrument that can be used to report arbitrary values that are likely to be statistically meaningful, for example, the request duration. Call to create a Histogram object. + The type that the histogram represents. + + + Records a measurement value. + The measurement value. + + + Records a measurement value. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement value. + The measurement value. + A list of key-value pair tags associated with the measurement. + + + Records a measurement value. + The measurement value. + The tags associated with the measurement. + + + Records a measurement value. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + + + + + Base class of all metrics instrument classes + + + Protected constructor to initialize the common instrument properties like the meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Activates the instrument to start recording measurements and to allow listeners to start listening to such measurements. + + + Gets the instrument description. + + + Gets a value that indicates if there are any listeners for this instrument. + + + Gets a value that indicates whether the instrument is an observable instrument. + + + Gets the Meter that created the instrument. + + + Gets the instrument name. + + + + Gets the instrument unit of measurements. + + + The base class for all non-observable instruments. + The type that the instrument represents. + + + Create the metrics instrument using the properties meter, name, description, and unit. + The meter that created the instrument. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + The tags associated with the measurement. + + + Records a measurement by notifying all objects that are listening to this instrument. + The measurement value. + A span of key-value pair tags associated with the measurement. + + + Stores one observed metrics value and its associated tags. This type is used by an Observable instrument's Observe() method when reporting current measurements. + The type that the measurement represents. + + + Initializes a new instance of using the specified value. + The measurement value. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Initializes a new instance of using the specified value and list of tags. + The measurement value. + The list of tags associated with the measurement. + + + Gets the measurement tags list. + + + Gets the measurement value. + + + A delegate to represent the Meterlistener callbacks that are used when recording measurements. + The instrument that sent the measurement. + The measurement value. + A span of key-value pair tags associated with the measurement. + The state object originally passed to method. + The type that the measurement represents. + + + Meter is the class responsible for creating and tracking the Instruments. + + + + + + Initializes a new instance of using the specified meter name. + The Meter name. + + + Initializes a new instance of using the specified meter name and version. + The Meter name. + The optional Meter version. + + + + + + + + + Create a metrics Counter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new counter. + + + + + + + + + + Creates a Histogram, which is an instrument that can be used to report arbitrary values that are likely to be statistically meaningful. It is intended for statistics such as histograms, summaries, and percentiles. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new histogram. + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement.. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableCounter, which is an instrument that reports monotonically increasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable counter. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableGauge, which is an asynchronous instrument that reports non-additive values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when ObservableCounter{T}.Observe() is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable gauge. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Creates an ObservableUpDownCounter object. ObservableUpDownCounter is an Instrument that reports increasing or decreasing values when the instrument is being observed. + The instrument name. Cannot be . + The callback to call to get the measurements when the is called by + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new observable up down counter. + + + + + + + + + + + Create a metrics UpDownCounter object. + The instrument name. Cannot be . + Optional instrument unit of measurements. + Optional instrument description. + The numerical type of the measurement. + A new up down counter. + + + + + + + + + + Dispose the Meter which will disable all instruments created by this meter. + + + + + + Gets the Meter name. + The Meter name + + + + + Gets the Meter version. + The Meter version. + + + + + + + + + + The MeterListener is class used to listen to the metrics instrument measurements recording. + + + Initializes a new instance of the class. + + + Stops listening to a specific instrument measurement recording. + The instrument to stop listening to. + The state object originally passed to method. + + + Disposes the listeners which will stop it from listening to any instrument. + + + Starts listening to a specific instrument measurement recording. + The instrument to listen to. + A state object that will be passed back to the callback getting measurements events. + + + Calls all Observable instruments that the listener is listening to, and calls with every collected measurement. + + + Sets a callback for a specific numeric type to get the measurement recording notification from all instruments which enabled listening and was created with the same specified numeric type. + If a measurement of type T is recorded and a callback of type T is registered, that callback will be used. + The callback which can be used to get measurement recording of numeric type T. + The type of the numeric measurement. + + + Enables the listener to start listening to instruments measurement recording. + + + Gets or sets the callback to get notified when an instrument is published. + The callback to get notified when an instrument is published. + + + Gets or sets the callback to get notified when the measurement is stopped on some instrument. + This can happen when the Meter or the Listener is disposed or calling on the listener. + The callback to get notified when the measurement is stopped on some instrument. + + + + + + + + + + + Represents a metrics-observable instrument that reports monotonically increasing values when the instrument is being observed, for example, CPU time (for different processes, threads, user mode, or kernel mode). Call to create the observable counter object. + The type that the observable counter represents. + + + Represents an observable instrument that reports non-additive values when the instrument is being observed, for example, the current room temperature. Call to create the observable counter object. + + + + ObservableInstrument{T} is the base class from which all metrics observable instruments will inherit. + The type that the observable instrument represents. + + + Initializes a new instance of the class using the specified meter, name, description, and unit. + All classes that extend ObservableInstrument{T} must call this constructor when constructing objects of the extended class. + The meter that created the instrument. + The instrument name. cannot be . + Optional instrument unit of measurements. + Optional instrument description. + + + + + + + + + + Fetches the current measurements being tracked by this instrument. All classes extending ObservableInstrument{T} need to implement this method. + The current measurements tracked by this instrument. + + + Gets a value that indicates if the instrument is an observable instrument. + + if the instrument is metrics-observable; otherwise. + + + A metrics-observable instrument that reports increasing or decreasing values when the instrument is being observed. +Use this instrument to monitor the process heap size or the approximate number of items in a lock-free circular buffer, for example. +To create an ObservableUpDownCounter object, use the methods. + The type that the counter represents. + + + An instrument that supports reporting positive or negative metric values. + UpDownCounter may be used in scenarios like reporting the change in active requests or queue size. + The type that the UpDownCounter represents. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A first key-value pair tag associated with the measurement. + A second key-value pair tag associated with the measurement. + A third key-value pair tag associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A list of key-value pair tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A of tags associated with the measurement. + + + Records the delta value of the measurement. The delta can be positive, negative, or zero. + The amount to be added, which can be positive, negative, or zero. + A span of key-value pair tags associated with the measurement. + + + A delegate that defines the signature of the callbacks used in the sampling process. + The Activity creation options used by callbacks to decide creating the Activity object or not. + The type of the requested parent to create the Activity object with. Should be either a string or an instance. + An object containing the sampling results, which indicate the amount of data to collect for the related . + + + Represents a list of tags that can be accessed by index. Provides methods to search, sort, and manipulate lists. + + + Initializes a new instance of using the specified . + A span of tags to initialize the list with. + + + Adds a tag to the list. + The key-value pair of the tag to add to the list. + + + Adds a tag with the specified and to the list. + The tag key. + The tag value. + + + Removes all elements from the . + + + Determines whether a tag is in the . + The tag to locate in the . + + if item is found in the ; otherwise, . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional Array that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0 or greater than or equal to the length. + + + Copies the contents of this into a destination span. + The destination object. + + The number of elements in the source is greater than the number of elements that the destination span. + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Searches for the specified tag and returns the zero-based index of the first occurrence within the entire . + The tag to locate in the . + The zero-based index of the first ocurrence of in the tag list. + + + Inserts an element into the at the specified index. + The zero-based index at which the item should be inserted. + The tag to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific object from the . + The tag to remove from the . + + if is successfully removed; otherwise, . This method also returns if was not found in the . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + index is less than 0 or is greater than . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Gets the number of tags contained in the . + The number of elements contained in the . + + + Gets a value indicating whether the is read-only. This property will always return . + + Always returns . + + + Gets or sets the tags at the specified index. + The item index. + + is not a valid index in the . + The element at the specified index. + + + An enumerator for traversing a tag list collection. + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + Advances the enumerator to the next element of the collection. + + if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + \ No newline at end of file diff --git a/packages/System.Diagnostics.DiagnosticSource.8.0.0/useSharedDesignerContext.txt b/packages/System.Diagnostics.DiagnosticSource.8.0.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Memory.4.5.5/.signature.p7s b/packages/System.Memory.4.5.5/.signature.p7s new file mode 100644 index 0000000..40dcb3e Binary files /dev/null and b/packages/System.Memory.4.5.5/.signature.p7s differ diff --git a/packages/System.Memory.4.5.5/LICENSE.TXT b/packages/System.Memory.4.5.5/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.Memory.4.5.5/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Memory.4.5.5/System.Memory.4.5.5.nupkg b/packages/System.Memory.4.5.5/System.Memory.4.5.5.nupkg new file mode 100644 index 0000000..9d654e2 Binary files /dev/null and b/packages/System.Memory.4.5.5/System.Memory.4.5.5.nupkg differ diff --git a/packages/System.Memory.4.5.5/THIRD-PARTY-NOTICES.TXT b/packages/System.Memory.4.5.5/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..db542ca --- /dev/null +++ b/packages/System.Memory.4.5.5/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,309 @@ +.NET Core uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Core software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +http://www.unicode.org/copyright.html#License + +Copyright © 1991-2017 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in http://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +http://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + diff --git a/packages/System.Memory.4.5.5/lib/net461/System.Memory.dll b/packages/System.Memory.4.5.5/lib/net461/System.Memory.dll new file mode 100644 index 0000000..4617199 Binary files /dev/null and b/packages/System.Memory.4.5.5/lib/net461/System.Memory.dll differ diff --git a/packages/System.Memory.4.5.5/lib/net461/System.Memory.xml b/packages/System.Memory.4.5.5/lib/net461/System.Memory.xml new file mode 100644 index 0000000..4d12fd7 --- /dev/null +++ b/packages/System.Memory.4.5.5/lib/net461/System.Memory.xml @@ -0,0 +1,355 @@ + + + System.Memory + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/System.Memory.4.5.5/lib/netcoreapp2.1/_._ b/packages/System.Memory.4.5.5/lib/netcoreapp2.1/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Memory.4.5.5/lib/netstandard1.1/System.Memory.dll b/packages/System.Memory.4.5.5/lib/netstandard1.1/System.Memory.dll new file mode 100644 index 0000000..31486d6 Binary files /dev/null and b/packages/System.Memory.4.5.5/lib/netstandard1.1/System.Memory.dll differ diff --git a/packages/System.Memory.4.5.5/lib/netstandard1.1/System.Memory.xml b/packages/System.Memory.4.5.5/lib/netstandard1.1/System.Memory.xml new file mode 100644 index 0000000..4d12fd7 --- /dev/null +++ b/packages/System.Memory.4.5.5/lib/netstandard1.1/System.Memory.xml @@ -0,0 +1,355 @@ + + + System.Memory + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/System.Memory.4.5.5/lib/netstandard2.0/System.Memory.dll b/packages/System.Memory.4.5.5/lib/netstandard2.0/System.Memory.dll new file mode 100644 index 0000000..1e6aef8 Binary files /dev/null and b/packages/System.Memory.4.5.5/lib/netstandard2.0/System.Memory.dll differ diff --git a/packages/System.Memory.4.5.5/lib/netstandard2.0/System.Memory.xml b/packages/System.Memory.4.5.5/lib/netstandard2.0/System.Memory.xml new file mode 100644 index 0000000..4d12fd7 --- /dev/null +++ b/packages/System.Memory.4.5.5/lib/netstandard2.0/System.Memory.xml @@ -0,0 +1,355 @@ + + + System.Memory + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/System.Memory.4.5.5/ref/netcoreapp2.1/_._ b/packages/System.Memory.4.5.5/ref/netcoreapp2.1/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Memory.4.5.5/useSharedDesignerContext.txt b/packages/System.Memory.4.5.5/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Memory.4.5.5/version.txt b/packages/System.Memory.4.5.5/version.txt new file mode 100644 index 0000000..b46e477 --- /dev/null +++ b/packages/System.Memory.4.5.5/version.txt @@ -0,0 +1 @@ +32b491939fbd125f304031c35038b1e14b4e3958 diff --git a/packages/System.Numerics.Vectors.4.5.0/.signature.p7s b/packages/System.Numerics.Vectors.4.5.0/.signature.p7s new file mode 100644 index 0000000..a945f63 Binary files /dev/null and b/packages/System.Numerics.Vectors.4.5.0/.signature.p7s differ diff --git a/packages/System.Numerics.Vectors.4.5.0/LICENSE.TXT b/packages/System.Numerics.Vectors.4.5.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Numerics.Vectors.4.5.0/System.Numerics.Vectors.4.5.0.nupkg b/packages/System.Numerics.Vectors.4.5.0/System.Numerics.Vectors.4.5.0.nupkg new file mode 100644 index 0000000..0ef4637 Binary files /dev/null and b/packages/System.Numerics.Vectors.4.5.0/System.Numerics.Vectors.4.5.0.nupkg differ diff --git a/packages/System.Numerics.Vectors.4.5.0/THIRD-PARTY-NOTICES.TXT b/packages/System.Numerics.Vectors.4.5.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..db542ca --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,309 @@ +.NET Core uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Core software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +http://www.unicode.org/copyright.html#License + +Copyright © 1991-2017 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in http://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +http://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/MonoAndroid10/_._ b/packages/System.Numerics.Vectors.4.5.0/lib/MonoAndroid10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/MonoTouch10/_._ b/packages/System.Numerics.Vectors.4.5.0/lib/MonoTouch10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/net46/System.Numerics.Vectors.dll b/packages/System.Numerics.Vectors.4.5.0/lib/net46/System.Numerics.Vectors.dll new file mode 100644 index 0000000..0865972 Binary files /dev/null and b/packages/System.Numerics.Vectors.4.5.0/lib/net46/System.Numerics.Vectors.dll differ diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/net46/System.Numerics.Vectors.xml b/packages/System.Numerics.Vectors.4.5.0/lib/net46/System.Numerics.Vectors.xml new file mode 100644 index 0000000..da34d39 --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/lib/net46/System.Numerics.Vectors.xml @@ -0,0 +1,2621 @@ + + + System.Numerics.Vectors + + + + Represents a 3x2 matrix. + + + Creates a 3x2 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a rotation matrix using the given rotation in radians. + The amount of rotation, in radians. + The rotation matrix. + + + Creates a rotation matrix using the specified rotation in radians and a center point. + The amount of rotation, in radians. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified X and Y components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the specified scale with an offset from the specified center. + The uniform scale to use. + The center offset. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The center point. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the given scale. + The uniform scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale with an offset from the specified center point. + The scale to use. + The center offset. + The scaling matrix. + + + Creates a skew matrix from the specified angles in radians. + The X angle, in radians. + The Y angle, in radians. + The skew matrix. + + + Creates a skew matrix from the specified angles in radians and a center point. + The X angle, in radians. + The Y angle, in radians. + The center point. + The skew matrix. + + + Creates a translation matrix from the specified 2-dimensional vector. + The translation position. + The translation matrix. + + + Creates a translation matrix from the specified X and Y components. + The X position. + The Y position. + The translation matrix. + + + Returns a value that indicates whether this instance and another 3x2 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant for this matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + The multiplicative identify matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Represents a 4x4 matrix. + + + Creates a object from a specified object. + A 3x2 matrix. + + + Creates a 4x4 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the third element in the first row. + The value to assign to the fourth element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the third element in the second row. + The value to assign to the third element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + The value to assign to the third element in the third row. + The value to assign to the fourth element in the third row. + The value to assign to the first element in the fourth row. + The value to assign to the second element in the fourth row. + The value to assign to the third element in the fourth row. + The value to assign to the fourth element in the fourth row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a spherical billboard that rotates around a specified object position. + The position of the object that the billboard will rotate around. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard. + + + Creates a cylindrical billboard that rotates around a specified axis. + The position of the object that the billboard will rotate around. + The position of the camera. + The axis to rotate the billboard around. + The forward vector of the camera. + The forward vector of the object. + The billboard matrix. + + + Creates a matrix that rotates around an arbitrary vector. + The axis to rotate around. + The angle to rotate around axis, in radians. + The rotation matrix. + + + Creates a rotation matrix from the specified Quaternion rotation value. + The source Quaternion. + The rotation matrix. + + + Creates a rotation matrix from the specified yaw, pitch, and roll. + The angle of rotation, in radians, around the Y axis. + The angle of rotation, in radians, around the X axis. + The angle of rotation, in radians, around the Z axis. + The rotation matrix. + + + Creates a view matrix. + The position of the camera. + The target towards which the camera is pointing. + The direction that is &quot;up&quot; from the camera&#39;s point of view. + The view matrix. + + + Creates an orthographic perspective matrix from the given view volume dimensions. + The width of the view volume. + The height of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a customized orthographic projection matrix. + The minimum X-value of the view volume. + The maximum X-value of the view volume. + The minimum Y-value of the view volume. + The maximum Y-value of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a perspective projection matrix from the given view volume dimensions. + The width of the view volume at the near view plane. + The height of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. + The field of view in the y direction, in radians. + The aspect ratio, defined as view space width divided by height. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + fieldOfView is less than or equal to zero. + -or- + fieldOfView is greater than or equal to . + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a customized perspective projection matrix. + The minimum x-value of the view volume at the near view plane. + The maximum x-value of the view volume at the near view plane. + The minimum y-value of the view volume at the near view plane. + The maximum y-value of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a matrix that reflects the coordinate system about a specified plane. + The plane about which to create a reflection. + A new matrix expressing the reflection. + + + Creates a matrix for rotating points around the X axis. + The amount, in radians, by which to rotate around the X axis. + The rotation matrix. + + + Creates a matrix for rotating points around the X axis from a center point. + The amount, in radians, by which to rotate around the X axis. + The center point. + The rotation matrix. + + + The amount, in radians, by which to rotate around the Y axis from a center point. + The amount, in radians, by which to rotate around the Y-axis. + The center point. + The rotation matrix. + + + Creates a matrix for rotating points around the Y axis. + The amount, in radians, by which to rotate around the Y-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis. + The amount, in radians, by which to rotate around the Z-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis from a center point. + The amount, in radians, by which to rotate around the Z-axis. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a uniform scaling matrix that scale equally on each axis. + The uniform scaling factor. + The scaling matrix. + + + Creates a scaling matrix with a center point. + The vector that contains the amount to scale on each axis. + The center point. + The scaling matrix. + + + Creates a uniform scaling matrix that scales equally on each axis with a center point. + The uniform scaling factor. + The center point. + The scaling matrix. + + + Creates a scaling matrix from the specified X, Y, and Z components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The center point. + The scaling matrix. + + + Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. + The direction from which the light that will cast the shadow is coming. + The plane onto which the new matrix should flatten geometry so as to cast a shadow. + A new matrix that can be used to flatten geometry onto the specified plane from the specified direction. + + + Creates a translation matrix from the specified 3-dimensional vector. + The amount to translate in each axis. + The translation matrix. + + + Creates a translation matrix from the specified X, Y, and Z components. + The amount to translate on the X axis. + The amount to translate on the Y axis. + The amount to translate on the Z axis. + The translation matrix. + + + Creates a world matrix with the specified parameters. + The position of the object. + The forward direction of the object. + The upward direction of the object. Its value is usually [0, 1, 0]. + The world matrix. + + + Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. + The source matrix. + When this method returns, contains the scaling component of the transformation matrix if the operation succeeded. + When this method returns, contains the rotation component of the transformation matrix if the operation succeeded. + When the method returns, contains the translation component of the transformation matrix if the operation succeeded. + true if matrix was decomposed successfully; otherwise, false. + + + Returns a value that indicates whether this instance and another 4x4 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant of the current 4x4 matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + Gets the multiplicative identity matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The third element of the first row. + + + + The fourth element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The third element of the second row. + + + + The fourth element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + The third element of the third row. + + + + The fourth element of the third row. + + + + The first element of the fourth row. + + + + The second element of the fourth row. + + + + The third element of the fourth row. + + + + The fourth element of the fourth row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to care + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Transforms the specified matrix by applying the specified Quaternion rotation. + The matrix to transform. + The rotation t apply. + The transformed matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Transposes the rows and columns of a matrix. + The matrix to transpose. + The transposed matrix. + + + Represents a three-dimensional plane. + + + Creates a object from a specified four-dimensional vector. + A vector whose first three elements describe the normal vector, and whose defines the distance along that normal from the origin. + + + Creates a object from a specified normal and the distance along the normal from the origin. + The plane&#39;s normal vector. + The plane&#39;s distance from the origin along its normal vector. + + + Creates a object from the X, Y, and Z components of its normal, and its distance from the origin on that normal. + The X component of the normal. + The Y component of the normal. + The Z component of the normal. + The distance of the plane along its normal from the origin. + + + Creates a object that contains three specified points. + The first point defining the plane. + The second point defining the plane. + The third point defining the plane. + The plane containing the three points. + + + The distance of the plane along its normal from the origin. + + + + Calculates the dot product of a plane and a 4-dimensional vector. + The plane. + The four-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the normal vector of this plane plus the distance () value of the plane. + The plane. + The 3-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the vector of this plane. + The plane. + The three-dimensional vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another plane object are equal. + The other plane. + true if the two planes are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + The normal vector of the plane. + + + + Creates a new object whose normal vector is the source plane&#39;s normal vector normalized. + The source plane. + The normalized plane. + + + Returns a value that indicates whether two planes are equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether two planes are not equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the string representation of this plane object. + A string that represents this object. + + + Transforms a normalized plane by a 4x4 matrix. + The normalized plane to transform. + The transformation matrix to apply to plane. + The transformed plane. + + + Transforms a normalized plane by a Quaternion rotation. + The normalized plane to transform. + The Quaternion rotation to apply to the plane. + A new plane that results from applying the Quaternion rotation. + + + Represents a vector that is used to encode three-dimensional physical rotations. + + + Creates a quaternion from the specified vector and rotation parts. + The vector part of the quaternion. + The rotation part of the quaternion. + + + Constructs a quaternion from the specified components. + The value to assign to the X component of the quaternion. + The value to assign to the Y component of the quaternion. + The value to assign to the Z component of the quaternion. + The value to assign to the W component of the quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Concatenates two quaternions. + The first quaternion rotation in the series. + The second quaternion rotation in the series. + A new quaternion representing the concatenation of the value1 rotation followed by the value2 rotation. + + + Returns the conjugate of a specified quaternion. + The quaternion. + A new quaternion that is the conjugate of value. + + + Creates a quaternion from a vector and an angle to rotate about the vector. + The vector to rotate around. + The angle, in radians, to rotate around the vector. + The newly created quaternion. + + + Creates a quaternion from the specified rotation matrix. + The rotation matrix. + The newly created quaternion. + + + Creates a new quaternion from the given yaw, pitch, and roll. + The yaw angle, in radians, around the Y axis. + The pitch angle, in radians, around the X axis. + The roll angle, in radians, around the Z axis. + The resulting quaternion. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Calculates the dot product of two quaternions. + The first quaternion. + The second quaternion. + The dot product. + + + Returns a value that indicates whether this instance and another quaternion are equal. + The other quaternion. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Gets a quaternion that represents no rotation. + A quaternion whose values are (0, 0, 0, 1). + + + Returns the inverse of a quaternion. + The quaternion. + The inverted quaternion. + + + Gets a value that indicates whether the current instance is the identity quaternion. + true if the current instance is the identity quaternion; otherwise, false. + + + Calculates the length of the quaternion. + The computed length of the quaternion. + + + Calculates the squared length of the quaternion. + The length squared of the quaternion. + + + Performs a linear interpolation between two quaternions based on a value that specifies the weighting of the second quaternion. + The first quaternion. + The second quaternion. + The relative weight of quaternion2 in the interpolation. + The interpolated quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Divides each component of a specified by its length. + The quaternion to normalize. + The normalized quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Returns a value that indicates whether two quaternions are equal. + The first quaternion to compare. + The second quaternion to compare. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether two quaternions are not equal. + The first quaternion to compare. + The second quaternion to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Interpolates between two quaternions, using spherical linear interpolation. + The first quaternion. + The second quaternion. + The relative weight of the second quaternion in the interpolation. + The interpolated quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this quaternion. + The string representation of this quaternion. + + + The rotation component of the quaternion. + + + + The X value of the vector component of the quaternion. + + + + The Y value of the vector component of the quaternion. + + + + The Z value of the vector component of the quaternion. + + + + Represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms. + The vector type. T can be any primitive numeric type. + + + Creates a vector whose components are of a specified type. + The numeric type that defines the type of the components in the vector. + + + Creates a vector from a specified array. + A numeric array. + values is null. + + + Creates a vector from a specified array starting at a specified index position. + A numeric array. + The starting index position from which to create the vector. + values is null. + index is less than zero. + -or- + The length of values minus index is less than . + + + Copies the vector instance to a specified destination array. + The array to receive a copy of the vector values. + destination is null. + The number of elements in the current vector is greater than the number of elements available in the destination array. + + + Copies the vector instance to a specified destination array starting at a specified index position. + The array to receive a copy of the vector values. + The starting index in destination at which to begin the copy operation. + destination is null. + The number of elements in the current instance is greater than the number of elements available from startIndex to the end of the destination array. + index is less than zero or greater than the last index in destination. + + + Returns the number of elements stored in the vector. + The number of elements stored in the vector. + Access to the property getter via reflection is not supported. + + + Returns a value that indicates whether this instance is equal to a specified vector. + The vector to compare with this instance. + true if the current instance and other are equal; otherwise, false. + + + Returns a value that indicates whether this instance is equal to a specified object. + The object to compare with this instance. + true if the current instance and obj are equal; otherwise, false. The method returns false if obj is null, or if obj is a vector of a different type than the current instance. + + + Returns the hash code for this instance. + The hash code. + + + Gets the element at a specified index. + The index of the element to return. + The element at index index. + index is less than zero. + -or- + index is greater than or equal to . + + + Returns a vector containing all ones. + A vector containing all ones. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Returns a new vector by performing a bitwise And operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise And of left and right. + + + Returns a new vector by performing a bitwise Or operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise Or of the elements in left and right. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Returns a value that indicates whether each pair of elements in two specified vectors are equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a new vector by performing a bitwise XOr operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise XOr of the elements in left and right. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Returns a value that indicates whether any single pair of elements in the specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if any element pairs in left and right are equal. false if no element pairs are equal. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar value. + The source vector. + A scalar value. + The scaled vector. + + + Multiplies a vector by the given scalar. + The scalar value. + The source vector. + The scaled vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The one&#39;s complement vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates a given vector. + The vector to negate. + The negated vector. + + + Returns the string representation of this vector using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Returns the string representation of this vector using default formatting. + The string representation of this vector. + + + Returns the string representation of this vector using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns a vector containing all zeroes. + A vector containing all zeroes. + + + Provides a collection of static convenience methods for creating, manipulating, combining, and converting generic vectors. + + + Returns a new vector whose elements are the absolute values of the given vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The absolute value vector. + + + Returns a new vector whose values are the sum of each pair of elements from two given vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The summed vector. + + + Returns a new vector by performing a bitwise And Not operation on each pair of corresponding elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a double-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of signed bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a single-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Returns a new vector by performing a bitwise And operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector by performing a bitwise Or operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Creates a new single-precision vector with elements selected between two specified single-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new double-precision vector with elements selected between two specified double-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new vector of a specified type with elements selected between two specified source vectors of the same type based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The vector type. T can be any primitive numeric type. + The new vector with elements selected based on the mask. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose values are the result of dividing the first vector&#39;s elements by the corresponding elements in the second vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The divided vector. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The dot product. + + + Returns a new integral vector whose elements signal whether the elements in two specified double-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified integral vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in two specified long integer vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified single-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in two specified vectors of the same type are equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether each pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left and right are equal; otherwise, false. + + + Returns a value that indicates whether any single pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element pair in left and right is equal; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are greater than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are greater than their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than their corresponding elements in the second vector of the same time. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the single-precision floating-point second vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than or equal to their corresponding elements in the second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than or equal to their corresponding elements in the second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than or equal to their corresponding elements in the second vector of the same type. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than or equal to all the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than or equal to the corresponding element in right; otherwise, false. + + + Gets a value that indicates whether vector operations are subject to hardware acceleration through JIT intrinsic support. + true if vector operations are subject to hardware acceleration; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision vector are less than their corresponding elements in a second single-precision vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in one vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all of the elements in the first vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than or equal to their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than or equal to their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less or equal to their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are less than or equal to their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than or equal to the corresponding element in right; otherwise, false. + + + Returns a new vector whose elements are the maximum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The maximum vector. + + + Returns a new vector whose elements are the minimum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The minimum vector. + + + Returns a new vector whose values are a scalar value multiplied by each of the values of a specified vector. + The scalar value. + The vector. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + Returns a new vector whose values are the product of each pair of elements in two specified vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The product vector. + + + Returns a new vector whose values are the values of a specified vector each multiplied by a scalar value. + The vector. + The scalar value. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose elements are the negation of the corresponding element in the specified vector. + The source vector. + The vector type. T can be any primitive numeric type. + The negated vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector whose elements are the square roots of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The square root vector. + + + Returns a new vector whose values are the difference between the elements in the second vector and their corresponding elements in the first vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The difference vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector by performing a bitwise exclusive Or (XOr) operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Represents a vector with two single-precision floating-point values. + + + Creates a new object whose two elements have the same value. + The value to assign to both elements. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of the vector. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 2 elements are equal to one. + A vector whose two elements are equal to one (that is, it returns the vector (1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 3x2 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 3x2 matrix. + The source vector. + The matrix. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0). + The vector (1,0). + + + Gets the vector (0,1). + The vector (0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + Returns a vector whose 2 elements are equal to zero. + A vector whose two elements are equal to zero (that is, it returns the vector (0,0). + + + Represents a vector with three single-precision floating-point values. + + + Creates a new object whose three elements have the same value. + The value to assign to all three elements. + + + Creates a new object from the specified object and the specified value. + The vector with two elements. + The additional value to assign to the field. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the cross product of two vectors. + The first vector. + The second vector. + The cross product. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 3 elements are equal to one. + A vector whose three elements are equal to one (that is, it returns the vector (1,1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0,0). + The vector (1,0,0). + + + Gets the vector (0,1,0). + The vector (0,1,0).. + + + Gets the vector (0,0,1). + The vector (0,0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 3 elements are equal to zero. + A vector whose three elements are equal to zero (that is, it returns the vector (0,0,0). + + + Represents a vector with four single-precision floating-point values. + + + Creates a new object whose four elements have the same value. + The value to assign to all four elements. + + + Constructs a new object from the specified object and a W component. + The vector to use for the X, Y, and Z components. + The W component. + + + Creates a new object from the specified object and a Z and a W component. + The vector to use for the X and Y components. + The Z component. + The W component. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 4 elements are equal to one. + Returns . + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a four-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a four-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a three-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a two-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a two-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a three-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Gets the vector (0,0,0,1). + The vector (0,0,0,1). + + + Gets the vector (1,0,0,0). + The vector (1,0,0,0). + + + Gets the vector (0,1,0,0). + The vector (0,1,0,0).. + + + Gets a vector whose 4 elements are equal to zero. + The vector (0,0,1,0). + + + The W component of the vector. + + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 4 elements are equal to zero. + A vector whose four elements are equal to zero (that is, it returns the vector (0,0,0,0). + + + \ No newline at end of file diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/netcoreapp2.0/_._ b/packages/System.Numerics.Vectors.4.5.0/lib/netcoreapp2.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/netstandard1.0/System.Numerics.Vectors.dll b/packages/System.Numerics.Vectors.4.5.0/lib/netstandard1.0/System.Numerics.Vectors.dll new file mode 100644 index 0000000..433aa36 Binary files /dev/null and b/packages/System.Numerics.Vectors.4.5.0/lib/netstandard1.0/System.Numerics.Vectors.dll differ diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/netstandard1.0/System.Numerics.Vectors.xml b/packages/System.Numerics.Vectors.4.5.0/lib/netstandard1.0/System.Numerics.Vectors.xml new file mode 100644 index 0000000..da34d39 --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/lib/netstandard1.0/System.Numerics.Vectors.xml @@ -0,0 +1,2621 @@ + + + System.Numerics.Vectors + + + + Represents a 3x2 matrix. + + + Creates a 3x2 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a rotation matrix using the given rotation in radians. + The amount of rotation, in radians. + The rotation matrix. + + + Creates a rotation matrix using the specified rotation in radians and a center point. + The amount of rotation, in radians. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified X and Y components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the specified scale with an offset from the specified center. + The uniform scale to use. + The center offset. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The center point. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the given scale. + The uniform scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale with an offset from the specified center point. + The scale to use. + The center offset. + The scaling matrix. + + + Creates a skew matrix from the specified angles in radians. + The X angle, in radians. + The Y angle, in radians. + The skew matrix. + + + Creates a skew matrix from the specified angles in radians and a center point. + The X angle, in radians. + The Y angle, in radians. + The center point. + The skew matrix. + + + Creates a translation matrix from the specified 2-dimensional vector. + The translation position. + The translation matrix. + + + Creates a translation matrix from the specified X and Y components. + The X position. + The Y position. + The translation matrix. + + + Returns a value that indicates whether this instance and another 3x2 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant for this matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + The multiplicative identify matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Represents a 4x4 matrix. + + + Creates a object from a specified object. + A 3x2 matrix. + + + Creates a 4x4 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the third element in the first row. + The value to assign to the fourth element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the third element in the second row. + The value to assign to the third element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + The value to assign to the third element in the third row. + The value to assign to the fourth element in the third row. + The value to assign to the first element in the fourth row. + The value to assign to the second element in the fourth row. + The value to assign to the third element in the fourth row. + The value to assign to the fourth element in the fourth row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a spherical billboard that rotates around a specified object position. + The position of the object that the billboard will rotate around. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard. + + + Creates a cylindrical billboard that rotates around a specified axis. + The position of the object that the billboard will rotate around. + The position of the camera. + The axis to rotate the billboard around. + The forward vector of the camera. + The forward vector of the object. + The billboard matrix. + + + Creates a matrix that rotates around an arbitrary vector. + The axis to rotate around. + The angle to rotate around axis, in radians. + The rotation matrix. + + + Creates a rotation matrix from the specified Quaternion rotation value. + The source Quaternion. + The rotation matrix. + + + Creates a rotation matrix from the specified yaw, pitch, and roll. + The angle of rotation, in radians, around the Y axis. + The angle of rotation, in radians, around the X axis. + The angle of rotation, in radians, around the Z axis. + The rotation matrix. + + + Creates a view matrix. + The position of the camera. + The target towards which the camera is pointing. + The direction that is &quot;up&quot; from the camera&#39;s point of view. + The view matrix. + + + Creates an orthographic perspective matrix from the given view volume dimensions. + The width of the view volume. + The height of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a customized orthographic projection matrix. + The minimum X-value of the view volume. + The maximum X-value of the view volume. + The minimum Y-value of the view volume. + The maximum Y-value of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a perspective projection matrix from the given view volume dimensions. + The width of the view volume at the near view plane. + The height of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. + The field of view in the y direction, in radians. + The aspect ratio, defined as view space width divided by height. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + fieldOfView is less than or equal to zero. + -or- + fieldOfView is greater than or equal to . + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a customized perspective projection matrix. + The minimum x-value of the view volume at the near view plane. + The maximum x-value of the view volume at the near view plane. + The minimum y-value of the view volume at the near view plane. + The maximum y-value of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a matrix that reflects the coordinate system about a specified plane. + The plane about which to create a reflection. + A new matrix expressing the reflection. + + + Creates a matrix for rotating points around the X axis. + The amount, in radians, by which to rotate around the X axis. + The rotation matrix. + + + Creates a matrix for rotating points around the X axis from a center point. + The amount, in radians, by which to rotate around the X axis. + The center point. + The rotation matrix. + + + The amount, in radians, by which to rotate around the Y axis from a center point. + The amount, in radians, by which to rotate around the Y-axis. + The center point. + The rotation matrix. + + + Creates a matrix for rotating points around the Y axis. + The amount, in radians, by which to rotate around the Y-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis. + The amount, in radians, by which to rotate around the Z-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis from a center point. + The amount, in radians, by which to rotate around the Z-axis. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a uniform scaling matrix that scale equally on each axis. + The uniform scaling factor. + The scaling matrix. + + + Creates a scaling matrix with a center point. + The vector that contains the amount to scale on each axis. + The center point. + The scaling matrix. + + + Creates a uniform scaling matrix that scales equally on each axis with a center point. + The uniform scaling factor. + The center point. + The scaling matrix. + + + Creates a scaling matrix from the specified X, Y, and Z components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The center point. + The scaling matrix. + + + Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. + The direction from which the light that will cast the shadow is coming. + The plane onto which the new matrix should flatten geometry so as to cast a shadow. + A new matrix that can be used to flatten geometry onto the specified plane from the specified direction. + + + Creates a translation matrix from the specified 3-dimensional vector. + The amount to translate in each axis. + The translation matrix. + + + Creates a translation matrix from the specified X, Y, and Z components. + The amount to translate on the X axis. + The amount to translate on the Y axis. + The amount to translate on the Z axis. + The translation matrix. + + + Creates a world matrix with the specified parameters. + The position of the object. + The forward direction of the object. + The upward direction of the object. Its value is usually [0, 1, 0]. + The world matrix. + + + Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. + The source matrix. + When this method returns, contains the scaling component of the transformation matrix if the operation succeeded. + When this method returns, contains the rotation component of the transformation matrix if the operation succeeded. + When the method returns, contains the translation component of the transformation matrix if the operation succeeded. + true if matrix was decomposed successfully; otherwise, false. + + + Returns a value that indicates whether this instance and another 4x4 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant of the current 4x4 matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + Gets the multiplicative identity matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The third element of the first row. + + + + The fourth element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The third element of the second row. + + + + The fourth element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + The third element of the third row. + + + + The fourth element of the third row. + + + + The first element of the fourth row. + + + + The second element of the fourth row. + + + + The third element of the fourth row. + + + + The fourth element of the fourth row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to care + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Transforms the specified matrix by applying the specified Quaternion rotation. + The matrix to transform. + The rotation t apply. + The transformed matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Transposes the rows and columns of a matrix. + The matrix to transpose. + The transposed matrix. + + + Represents a three-dimensional plane. + + + Creates a object from a specified four-dimensional vector. + A vector whose first three elements describe the normal vector, and whose defines the distance along that normal from the origin. + + + Creates a object from a specified normal and the distance along the normal from the origin. + The plane&#39;s normal vector. + The plane&#39;s distance from the origin along its normal vector. + + + Creates a object from the X, Y, and Z components of its normal, and its distance from the origin on that normal. + The X component of the normal. + The Y component of the normal. + The Z component of the normal. + The distance of the plane along its normal from the origin. + + + Creates a object that contains three specified points. + The first point defining the plane. + The second point defining the plane. + The third point defining the plane. + The plane containing the three points. + + + The distance of the plane along its normal from the origin. + + + + Calculates the dot product of a plane and a 4-dimensional vector. + The plane. + The four-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the normal vector of this plane plus the distance () value of the plane. + The plane. + The 3-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the vector of this plane. + The plane. + The three-dimensional vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another plane object are equal. + The other plane. + true if the two planes are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + The normal vector of the plane. + + + + Creates a new object whose normal vector is the source plane&#39;s normal vector normalized. + The source plane. + The normalized plane. + + + Returns a value that indicates whether two planes are equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether two planes are not equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the string representation of this plane object. + A string that represents this object. + + + Transforms a normalized plane by a 4x4 matrix. + The normalized plane to transform. + The transformation matrix to apply to plane. + The transformed plane. + + + Transforms a normalized plane by a Quaternion rotation. + The normalized plane to transform. + The Quaternion rotation to apply to the plane. + A new plane that results from applying the Quaternion rotation. + + + Represents a vector that is used to encode three-dimensional physical rotations. + + + Creates a quaternion from the specified vector and rotation parts. + The vector part of the quaternion. + The rotation part of the quaternion. + + + Constructs a quaternion from the specified components. + The value to assign to the X component of the quaternion. + The value to assign to the Y component of the quaternion. + The value to assign to the Z component of the quaternion. + The value to assign to the W component of the quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Concatenates two quaternions. + The first quaternion rotation in the series. + The second quaternion rotation in the series. + A new quaternion representing the concatenation of the value1 rotation followed by the value2 rotation. + + + Returns the conjugate of a specified quaternion. + The quaternion. + A new quaternion that is the conjugate of value. + + + Creates a quaternion from a vector and an angle to rotate about the vector. + The vector to rotate around. + The angle, in radians, to rotate around the vector. + The newly created quaternion. + + + Creates a quaternion from the specified rotation matrix. + The rotation matrix. + The newly created quaternion. + + + Creates a new quaternion from the given yaw, pitch, and roll. + The yaw angle, in radians, around the Y axis. + The pitch angle, in radians, around the X axis. + The roll angle, in radians, around the Z axis. + The resulting quaternion. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Calculates the dot product of two quaternions. + The first quaternion. + The second quaternion. + The dot product. + + + Returns a value that indicates whether this instance and another quaternion are equal. + The other quaternion. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Gets a quaternion that represents no rotation. + A quaternion whose values are (0, 0, 0, 1). + + + Returns the inverse of a quaternion. + The quaternion. + The inverted quaternion. + + + Gets a value that indicates whether the current instance is the identity quaternion. + true if the current instance is the identity quaternion; otherwise, false. + + + Calculates the length of the quaternion. + The computed length of the quaternion. + + + Calculates the squared length of the quaternion. + The length squared of the quaternion. + + + Performs a linear interpolation between two quaternions based on a value that specifies the weighting of the second quaternion. + The first quaternion. + The second quaternion. + The relative weight of quaternion2 in the interpolation. + The interpolated quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Divides each component of a specified by its length. + The quaternion to normalize. + The normalized quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Returns a value that indicates whether two quaternions are equal. + The first quaternion to compare. + The second quaternion to compare. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether two quaternions are not equal. + The first quaternion to compare. + The second quaternion to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Interpolates between two quaternions, using spherical linear interpolation. + The first quaternion. + The second quaternion. + The relative weight of the second quaternion in the interpolation. + The interpolated quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this quaternion. + The string representation of this quaternion. + + + The rotation component of the quaternion. + + + + The X value of the vector component of the quaternion. + + + + The Y value of the vector component of the quaternion. + + + + The Z value of the vector component of the quaternion. + + + + Represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms. + The vector type. T can be any primitive numeric type. + + + Creates a vector whose components are of a specified type. + The numeric type that defines the type of the components in the vector. + + + Creates a vector from a specified array. + A numeric array. + values is null. + + + Creates a vector from a specified array starting at a specified index position. + A numeric array. + The starting index position from which to create the vector. + values is null. + index is less than zero. + -or- + The length of values minus index is less than . + + + Copies the vector instance to a specified destination array. + The array to receive a copy of the vector values. + destination is null. + The number of elements in the current vector is greater than the number of elements available in the destination array. + + + Copies the vector instance to a specified destination array starting at a specified index position. + The array to receive a copy of the vector values. + The starting index in destination at which to begin the copy operation. + destination is null. + The number of elements in the current instance is greater than the number of elements available from startIndex to the end of the destination array. + index is less than zero or greater than the last index in destination. + + + Returns the number of elements stored in the vector. + The number of elements stored in the vector. + Access to the property getter via reflection is not supported. + + + Returns a value that indicates whether this instance is equal to a specified vector. + The vector to compare with this instance. + true if the current instance and other are equal; otherwise, false. + + + Returns a value that indicates whether this instance is equal to a specified object. + The object to compare with this instance. + true if the current instance and obj are equal; otherwise, false. The method returns false if obj is null, or if obj is a vector of a different type than the current instance. + + + Returns the hash code for this instance. + The hash code. + + + Gets the element at a specified index. + The index of the element to return. + The element at index index. + index is less than zero. + -or- + index is greater than or equal to . + + + Returns a vector containing all ones. + A vector containing all ones. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Returns a new vector by performing a bitwise And operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise And of left and right. + + + Returns a new vector by performing a bitwise Or operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise Or of the elements in left and right. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Returns a value that indicates whether each pair of elements in two specified vectors are equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a new vector by performing a bitwise XOr operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise XOr of the elements in left and right. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Returns a value that indicates whether any single pair of elements in the specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if any element pairs in left and right are equal. false if no element pairs are equal. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar value. + The source vector. + A scalar value. + The scaled vector. + + + Multiplies a vector by the given scalar. + The scalar value. + The source vector. + The scaled vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The one&#39;s complement vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates a given vector. + The vector to negate. + The negated vector. + + + Returns the string representation of this vector using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Returns the string representation of this vector using default formatting. + The string representation of this vector. + + + Returns the string representation of this vector using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns a vector containing all zeroes. + A vector containing all zeroes. + + + Provides a collection of static convenience methods for creating, manipulating, combining, and converting generic vectors. + + + Returns a new vector whose elements are the absolute values of the given vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The absolute value vector. + + + Returns a new vector whose values are the sum of each pair of elements from two given vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The summed vector. + + + Returns a new vector by performing a bitwise And Not operation on each pair of corresponding elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a double-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of signed bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a single-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Returns a new vector by performing a bitwise And operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector by performing a bitwise Or operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Creates a new single-precision vector with elements selected between two specified single-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new double-precision vector with elements selected between two specified double-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new vector of a specified type with elements selected between two specified source vectors of the same type based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The vector type. T can be any primitive numeric type. + The new vector with elements selected based on the mask. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose values are the result of dividing the first vector&#39;s elements by the corresponding elements in the second vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The divided vector. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The dot product. + + + Returns a new integral vector whose elements signal whether the elements in two specified double-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified integral vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in two specified long integer vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified single-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in two specified vectors of the same type are equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether each pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left and right are equal; otherwise, false. + + + Returns a value that indicates whether any single pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element pair in left and right is equal; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are greater than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are greater than their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than their corresponding elements in the second vector of the same time. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the single-precision floating-point second vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than or equal to their corresponding elements in the second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than or equal to their corresponding elements in the second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than or equal to their corresponding elements in the second vector of the same type. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than or equal to all the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than or equal to the corresponding element in right; otherwise, false. + + + Gets a value that indicates whether vector operations are subject to hardware acceleration through JIT intrinsic support. + true if vector operations are subject to hardware acceleration; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision vector are less than their corresponding elements in a second single-precision vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in one vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all of the elements in the first vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than or equal to their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than or equal to their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less or equal to their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are less than or equal to their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than or equal to the corresponding element in right; otherwise, false. + + + Returns a new vector whose elements are the maximum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The maximum vector. + + + Returns a new vector whose elements are the minimum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The minimum vector. + + + Returns a new vector whose values are a scalar value multiplied by each of the values of a specified vector. + The scalar value. + The vector. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + Returns a new vector whose values are the product of each pair of elements in two specified vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The product vector. + + + Returns a new vector whose values are the values of a specified vector each multiplied by a scalar value. + The vector. + The scalar value. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose elements are the negation of the corresponding element in the specified vector. + The source vector. + The vector type. T can be any primitive numeric type. + The negated vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector whose elements are the square roots of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The square root vector. + + + Returns a new vector whose values are the difference between the elements in the second vector and their corresponding elements in the first vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The difference vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector by performing a bitwise exclusive Or (XOr) operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Represents a vector with two single-precision floating-point values. + + + Creates a new object whose two elements have the same value. + The value to assign to both elements. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of the vector. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 2 elements are equal to one. + A vector whose two elements are equal to one (that is, it returns the vector (1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 3x2 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 3x2 matrix. + The source vector. + The matrix. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0). + The vector (1,0). + + + Gets the vector (0,1). + The vector (0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + Returns a vector whose 2 elements are equal to zero. + A vector whose two elements are equal to zero (that is, it returns the vector (0,0). + + + Represents a vector with three single-precision floating-point values. + + + Creates a new object whose three elements have the same value. + The value to assign to all three elements. + + + Creates a new object from the specified object and the specified value. + The vector with two elements. + The additional value to assign to the field. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the cross product of two vectors. + The first vector. + The second vector. + The cross product. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 3 elements are equal to one. + A vector whose three elements are equal to one (that is, it returns the vector (1,1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0,0). + The vector (1,0,0). + + + Gets the vector (0,1,0). + The vector (0,1,0).. + + + Gets the vector (0,0,1). + The vector (0,0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 3 elements are equal to zero. + A vector whose three elements are equal to zero (that is, it returns the vector (0,0,0). + + + Represents a vector with four single-precision floating-point values. + + + Creates a new object whose four elements have the same value. + The value to assign to all four elements. + + + Constructs a new object from the specified object and a W component. + The vector to use for the X, Y, and Z components. + The W component. + + + Creates a new object from the specified object and a Z and a W component. + The vector to use for the X and Y components. + The Z component. + The W component. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 4 elements are equal to one. + Returns . + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a four-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a four-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a three-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a two-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a two-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a three-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Gets the vector (0,0,0,1). + The vector (0,0,0,1). + + + Gets the vector (1,0,0,0). + The vector (1,0,0,0). + + + Gets the vector (0,1,0,0). + The vector (0,1,0,0).. + + + Gets a vector whose 4 elements are equal to zero. + The vector (0,0,1,0). + + + The W component of the vector. + + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 4 elements are equal to zero. + A vector whose four elements are equal to zero (that is, it returns the vector (0,0,0,0). + + + \ No newline at end of file diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/netstandard2.0/System.Numerics.Vectors.dll b/packages/System.Numerics.Vectors.4.5.0/lib/netstandard2.0/System.Numerics.Vectors.dll new file mode 100644 index 0000000..1020577 Binary files /dev/null and b/packages/System.Numerics.Vectors.4.5.0/lib/netstandard2.0/System.Numerics.Vectors.dll differ diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/netstandard2.0/System.Numerics.Vectors.xml b/packages/System.Numerics.Vectors.4.5.0/lib/netstandard2.0/System.Numerics.Vectors.xml new file mode 100644 index 0000000..da34d39 --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/lib/netstandard2.0/System.Numerics.Vectors.xml @@ -0,0 +1,2621 @@ + + + System.Numerics.Vectors + + + + Represents a 3x2 matrix. + + + Creates a 3x2 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a rotation matrix using the given rotation in radians. + The amount of rotation, in radians. + The rotation matrix. + + + Creates a rotation matrix using the specified rotation in radians and a center point. + The amount of rotation, in radians. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified X and Y components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the specified scale with an offset from the specified center. + The uniform scale to use. + The center offset. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The center point. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the given scale. + The uniform scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale with an offset from the specified center point. + The scale to use. + The center offset. + The scaling matrix. + + + Creates a skew matrix from the specified angles in radians. + The X angle, in radians. + The Y angle, in radians. + The skew matrix. + + + Creates a skew matrix from the specified angles in radians and a center point. + The X angle, in radians. + The Y angle, in radians. + The center point. + The skew matrix. + + + Creates a translation matrix from the specified 2-dimensional vector. + The translation position. + The translation matrix. + + + Creates a translation matrix from the specified X and Y components. + The X position. + The Y position. + The translation matrix. + + + Returns a value that indicates whether this instance and another 3x2 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant for this matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + The multiplicative identify matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Represents a 4x4 matrix. + + + Creates a object from a specified object. + A 3x2 matrix. + + + Creates a 4x4 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the third element in the first row. + The value to assign to the fourth element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the third element in the second row. + The value to assign to the third element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + The value to assign to the third element in the third row. + The value to assign to the fourth element in the third row. + The value to assign to the first element in the fourth row. + The value to assign to the second element in the fourth row. + The value to assign to the third element in the fourth row. + The value to assign to the fourth element in the fourth row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a spherical billboard that rotates around a specified object position. + The position of the object that the billboard will rotate around. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard. + + + Creates a cylindrical billboard that rotates around a specified axis. + The position of the object that the billboard will rotate around. + The position of the camera. + The axis to rotate the billboard around. + The forward vector of the camera. + The forward vector of the object. + The billboard matrix. + + + Creates a matrix that rotates around an arbitrary vector. + The axis to rotate around. + The angle to rotate around axis, in radians. + The rotation matrix. + + + Creates a rotation matrix from the specified Quaternion rotation value. + The source Quaternion. + The rotation matrix. + + + Creates a rotation matrix from the specified yaw, pitch, and roll. + The angle of rotation, in radians, around the Y axis. + The angle of rotation, in radians, around the X axis. + The angle of rotation, in radians, around the Z axis. + The rotation matrix. + + + Creates a view matrix. + The position of the camera. + The target towards which the camera is pointing. + The direction that is &quot;up&quot; from the camera&#39;s point of view. + The view matrix. + + + Creates an orthographic perspective matrix from the given view volume dimensions. + The width of the view volume. + The height of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a customized orthographic projection matrix. + The minimum X-value of the view volume. + The maximum X-value of the view volume. + The minimum Y-value of the view volume. + The maximum Y-value of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a perspective projection matrix from the given view volume dimensions. + The width of the view volume at the near view plane. + The height of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. + The field of view in the y direction, in radians. + The aspect ratio, defined as view space width divided by height. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + fieldOfView is less than or equal to zero. + -or- + fieldOfView is greater than or equal to . + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a customized perspective projection matrix. + The minimum x-value of the view volume at the near view plane. + The maximum x-value of the view volume at the near view plane. + The minimum y-value of the view volume at the near view plane. + The maximum y-value of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a matrix that reflects the coordinate system about a specified plane. + The plane about which to create a reflection. + A new matrix expressing the reflection. + + + Creates a matrix for rotating points around the X axis. + The amount, in radians, by which to rotate around the X axis. + The rotation matrix. + + + Creates a matrix for rotating points around the X axis from a center point. + The amount, in radians, by which to rotate around the X axis. + The center point. + The rotation matrix. + + + The amount, in radians, by which to rotate around the Y axis from a center point. + The amount, in radians, by which to rotate around the Y-axis. + The center point. + The rotation matrix. + + + Creates a matrix for rotating points around the Y axis. + The amount, in radians, by which to rotate around the Y-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis. + The amount, in radians, by which to rotate around the Z-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis from a center point. + The amount, in radians, by which to rotate around the Z-axis. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a uniform scaling matrix that scale equally on each axis. + The uniform scaling factor. + The scaling matrix. + + + Creates a scaling matrix with a center point. + The vector that contains the amount to scale on each axis. + The center point. + The scaling matrix. + + + Creates a uniform scaling matrix that scales equally on each axis with a center point. + The uniform scaling factor. + The center point. + The scaling matrix. + + + Creates a scaling matrix from the specified X, Y, and Z components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The center point. + The scaling matrix. + + + Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. + The direction from which the light that will cast the shadow is coming. + The plane onto which the new matrix should flatten geometry so as to cast a shadow. + A new matrix that can be used to flatten geometry onto the specified plane from the specified direction. + + + Creates a translation matrix from the specified 3-dimensional vector. + The amount to translate in each axis. + The translation matrix. + + + Creates a translation matrix from the specified X, Y, and Z components. + The amount to translate on the X axis. + The amount to translate on the Y axis. + The amount to translate on the Z axis. + The translation matrix. + + + Creates a world matrix with the specified parameters. + The position of the object. + The forward direction of the object. + The upward direction of the object. Its value is usually [0, 1, 0]. + The world matrix. + + + Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. + The source matrix. + When this method returns, contains the scaling component of the transformation matrix if the operation succeeded. + When this method returns, contains the rotation component of the transformation matrix if the operation succeeded. + When the method returns, contains the translation component of the transformation matrix if the operation succeeded. + true if matrix was decomposed successfully; otherwise, false. + + + Returns a value that indicates whether this instance and another 4x4 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant of the current 4x4 matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + Gets the multiplicative identity matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The third element of the first row. + + + + The fourth element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The third element of the second row. + + + + The fourth element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + The third element of the third row. + + + + The fourth element of the third row. + + + + The first element of the fourth row. + + + + The second element of the fourth row. + + + + The third element of the fourth row. + + + + The fourth element of the fourth row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to care + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Transforms the specified matrix by applying the specified Quaternion rotation. + The matrix to transform. + The rotation t apply. + The transformed matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Transposes the rows and columns of a matrix. + The matrix to transpose. + The transposed matrix. + + + Represents a three-dimensional plane. + + + Creates a object from a specified four-dimensional vector. + A vector whose first three elements describe the normal vector, and whose defines the distance along that normal from the origin. + + + Creates a object from a specified normal and the distance along the normal from the origin. + The plane&#39;s normal vector. + The plane&#39;s distance from the origin along its normal vector. + + + Creates a object from the X, Y, and Z components of its normal, and its distance from the origin on that normal. + The X component of the normal. + The Y component of the normal. + The Z component of the normal. + The distance of the plane along its normal from the origin. + + + Creates a object that contains three specified points. + The first point defining the plane. + The second point defining the plane. + The third point defining the plane. + The plane containing the three points. + + + The distance of the plane along its normal from the origin. + + + + Calculates the dot product of a plane and a 4-dimensional vector. + The plane. + The four-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the normal vector of this plane plus the distance () value of the plane. + The plane. + The 3-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the vector of this plane. + The plane. + The three-dimensional vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another plane object are equal. + The other plane. + true if the two planes are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + The normal vector of the plane. + + + + Creates a new object whose normal vector is the source plane&#39;s normal vector normalized. + The source plane. + The normalized plane. + + + Returns a value that indicates whether two planes are equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether two planes are not equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the string representation of this plane object. + A string that represents this object. + + + Transforms a normalized plane by a 4x4 matrix. + The normalized plane to transform. + The transformation matrix to apply to plane. + The transformed plane. + + + Transforms a normalized plane by a Quaternion rotation. + The normalized plane to transform. + The Quaternion rotation to apply to the plane. + A new plane that results from applying the Quaternion rotation. + + + Represents a vector that is used to encode three-dimensional physical rotations. + + + Creates a quaternion from the specified vector and rotation parts. + The vector part of the quaternion. + The rotation part of the quaternion. + + + Constructs a quaternion from the specified components. + The value to assign to the X component of the quaternion. + The value to assign to the Y component of the quaternion. + The value to assign to the Z component of the quaternion. + The value to assign to the W component of the quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Concatenates two quaternions. + The first quaternion rotation in the series. + The second quaternion rotation in the series. + A new quaternion representing the concatenation of the value1 rotation followed by the value2 rotation. + + + Returns the conjugate of a specified quaternion. + The quaternion. + A new quaternion that is the conjugate of value. + + + Creates a quaternion from a vector and an angle to rotate about the vector. + The vector to rotate around. + The angle, in radians, to rotate around the vector. + The newly created quaternion. + + + Creates a quaternion from the specified rotation matrix. + The rotation matrix. + The newly created quaternion. + + + Creates a new quaternion from the given yaw, pitch, and roll. + The yaw angle, in radians, around the Y axis. + The pitch angle, in radians, around the X axis. + The roll angle, in radians, around the Z axis. + The resulting quaternion. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Calculates the dot product of two quaternions. + The first quaternion. + The second quaternion. + The dot product. + + + Returns a value that indicates whether this instance and another quaternion are equal. + The other quaternion. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Gets a quaternion that represents no rotation. + A quaternion whose values are (0, 0, 0, 1). + + + Returns the inverse of a quaternion. + The quaternion. + The inverted quaternion. + + + Gets a value that indicates whether the current instance is the identity quaternion. + true if the current instance is the identity quaternion; otherwise, false. + + + Calculates the length of the quaternion. + The computed length of the quaternion. + + + Calculates the squared length of the quaternion. + The length squared of the quaternion. + + + Performs a linear interpolation between two quaternions based on a value that specifies the weighting of the second quaternion. + The first quaternion. + The second quaternion. + The relative weight of quaternion2 in the interpolation. + The interpolated quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Divides each component of a specified by its length. + The quaternion to normalize. + The normalized quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Returns a value that indicates whether two quaternions are equal. + The first quaternion to compare. + The second quaternion to compare. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether two quaternions are not equal. + The first quaternion to compare. + The second quaternion to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Interpolates between two quaternions, using spherical linear interpolation. + The first quaternion. + The second quaternion. + The relative weight of the second quaternion in the interpolation. + The interpolated quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this quaternion. + The string representation of this quaternion. + + + The rotation component of the quaternion. + + + + The X value of the vector component of the quaternion. + + + + The Y value of the vector component of the quaternion. + + + + The Z value of the vector component of the quaternion. + + + + Represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms. + The vector type. T can be any primitive numeric type. + + + Creates a vector whose components are of a specified type. + The numeric type that defines the type of the components in the vector. + + + Creates a vector from a specified array. + A numeric array. + values is null. + + + Creates a vector from a specified array starting at a specified index position. + A numeric array. + The starting index position from which to create the vector. + values is null. + index is less than zero. + -or- + The length of values minus index is less than . + + + Copies the vector instance to a specified destination array. + The array to receive a copy of the vector values. + destination is null. + The number of elements in the current vector is greater than the number of elements available in the destination array. + + + Copies the vector instance to a specified destination array starting at a specified index position. + The array to receive a copy of the vector values. + The starting index in destination at which to begin the copy operation. + destination is null. + The number of elements in the current instance is greater than the number of elements available from startIndex to the end of the destination array. + index is less than zero or greater than the last index in destination. + + + Returns the number of elements stored in the vector. + The number of elements stored in the vector. + Access to the property getter via reflection is not supported. + + + Returns a value that indicates whether this instance is equal to a specified vector. + The vector to compare with this instance. + true if the current instance and other are equal; otherwise, false. + + + Returns a value that indicates whether this instance is equal to a specified object. + The object to compare with this instance. + true if the current instance and obj are equal; otherwise, false. The method returns false if obj is null, or if obj is a vector of a different type than the current instance. + + + Returns the hash code for this instance. + The hash code. + + + Gets the element at a specified index. + The index of the element to return. + The element at index index. + index is less than zero. + -or- + index is greater than or equal to . + + + Returns a vector containing all ones. + A vector containing all ones. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Returns a new vector by performing a bitwise And operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise And of left and right. + + + Returns a new vector by performing a bitwise Or operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise Or of the elements in left and right. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Returns a value that indicates whether each pair of elements in two specified vectors are equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a new vector by performing a bitwise XOr operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise XOr of the elements in left and right. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Returns a value that indicates whether any single pair of elements in the specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if any element pairs in left and right are equal. false if no element pairs are equal. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar value. + The source vector. + A scalar value. + The scaled vector. + + + Multiplies a vector by the given scalar. + The scalar value. + The source vector. + The scaled vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The one&#39;s complement vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates a given vector. + The vector to negate. + The negated vector. + + + Returns the string representation of this vector using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Returns the string representation of this vector using default formatting. + The string representation of this vector. + + + Returns the string representation of this vector using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns a vector containing all zeroes. + A vector containing all zeroes. + + + Provides a collection of static convenience methods for creating, manipulating, combining, and converting generic vectors. + + + Returns a new vector whose elements are the absolute values of the given vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The absolute value vector. + + + Returns a new vector whose values are the sum of each pair of elements from two given vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The summed vector. + + + Returns a new vector by performing a bitwise And Not operation on each pair of corresponding elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a double-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of signed bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a single-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Returns a new vector by performing a bitwise And operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector by performing a bitwise Or operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Creates a new single-precision vector with elements selected between two specified single-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new double-precision vector with elements selected between two specified double-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new vector of a specified type with elements selected between two specified source vectors of the same type based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The vector type. T can be any primitive numeric type. + The new vector with elements selected based on the mask. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose values are the result of dividing the first vector&#39;s elements by the corresponding elements in the second vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The divided vector. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The dot product. + + + Returns a new integral vector whose elements signal whether the elements in two specified double-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified integral vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in two specified long integer vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified single-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in two specified vectors of the same type are equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether each pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left and right are equal; otherwise, false. + + + Returns a value that indicates whether any single pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element pair in left and right is equal; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are greater than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are greater than their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than their corresponding elements in the second vector of the same time. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the single-precision floating-point second vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than or equal to their corresponding elements in the second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than or equal to their corresponding elements in the second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than or equal to their corresponding elements in the second vector of the same type. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than or equal to all the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than or equal to the corresponding element in right; otherwise, false. + + + Gets a value that indicates whether vector operations are subject to hardware acceleration through JIT intrinsic support. + true if vector operations are subject to hardware acceleration; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision vector are less than their corresponding elements in a second single-precision vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in one vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all of the elements in the first vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than or equal to their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than or equal to their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less or equal to their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are less than or equal to their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than or equal to the corresponding element in right; otherwise, false. + + + Returns a new vector whose elements are the maximum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The maximum vector. + + + Returns a new vector whose elements are the minimum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The minimum vector. + + + Returns a new vector whose values are a scalar value multiplied by each of the values of a specified vector. + The scalar value. + The vector. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + Returns a new vector whose values are the product of each pair of elements in two specified vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The product vector. + + + Returns a new vector whose values are the values of a specified vector each multiplied by a scalar value. + The vector. + The scalar value. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose elements are the negation of the corresponding element in the specified vector. + The source vector. + The vector type. T can be any primitive numeric type. + The negated vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector whose elements are the square roots of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The square root vector. + + + Returns a new vector whose values are the difference between the elements in the second vector and their corresponding elements in the first vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The difference vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector by performing a bitwise exclusive Or (XOr) operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Represents a vector with two single-precision floating-point values. + + + Creates a new object whose two elements have the same value. + The value to assign to both elements. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of the vector. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 2 elements are equal to one. + A vector whose two elements are equal to one (that is, it returns the vector (1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 3x2 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 3x2 matrix. + The source vector. + The matrix. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0). + The vector (1,0). + + + Gets the vector (0,1). + The vector (0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + Returns a vector whose 2 elements are equal to zero. + A vector whose two elements are equal to zero (that is, it returns the vector (0,0). + + + Represents a vector with three single-precision floating-point values. + + + Creates a new object whose three elements have the same value. + The value to assign to all three elements. + + + Creates a new object from the specified object and the specified value. + The vector with two elements. + The additional value to assign to the field. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the cross product of two vectors. + The first vector. + The second vector. + The cross product. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 3 elements are equal to one. + A vector whose three elements are equal to one (that is, it returns the vector (1,1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0,0). + The vector (1,0,0). + + + Gets the vector (0,1,0). + The vector (0,1,0).. + + + Gets the vector (0,0,1). + The vector (0,0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 3 elements are equal to zero. + A vector whose three elements are equal to zero (that is, it returns the vector (0,0,0). + + + Represents a vector with four single-precision floating-point values. + + + Creates a new object whose four elements have the same value. + The value to assign to all four elements. + + + Constructs a new object from the specified object and a W component. + The vector to use for the X, Y, and Z components. + The W component. + + + Creates a new object from the specified object and a Z and a W component. + The vector to use for the X and Y components. + The Z component. + The W component. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 4 elements are equal to one. + Returns . + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a four-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a four-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a three-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a two-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a two-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a three-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Gets the vector (0,0,0,1). + The vector (0,0,0,1). + + + Gets the vector (1,0,0,0). + The vector (1,0,0,0). + + + Gets the vector (0,1,0,0). + The vector (0,1,0,0).. + + + Gets a vector whose 4 elements are equal to zero. + The vector (0,0,1,0). + + + The W component of the vector. + + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 4 elements are equal to zero. + A vector whose four elements are equal to zero (that is, it returns the vector (0,0,0,0). + + + \ No newline at end of file diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.dll b/packages/System.Numerics.Vectors.4.5.0/lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.dll new file mode 100644 index 0000000..433aa36 Binary files /dev/null and b/packages/System.Numerics.Vectors.4.5.0/lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.dll differ diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.xml b/packages/System.Numerics.Vectors.4.5.0/lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.xml new file mode 100644 index 0000000..da34d39 --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.xml @@ -0,0 +1,2621 @@ + + + System.Numerics.Vectors + + + + Represents a 3x2 matrix. + + + Creates a 3x2 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a rotation matrix using the given rotation in radians. + The amount of rotation, in radians. + The rotation matrix. + + + Creates a rotation matrix using the specified rotation in radians and a center point. + The amount of rotation, in radians. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified X and Y components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the specified scale with an offset from the specified center. + The uniform scale to use. + The center offset. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The center point. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the given scale. + The uniform scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale with an offset from the specified center point. + The scale to use. + The center offset. + The scaling matrix. + + + Creates a skew matrix from the specified angles in radians. + The X angle, in radians. + The Y angle, in radians. + The skew matrix. + + + Creates a skew matrix from the specified angles in radians and a center point. + The X angle, in radians. + The Y angle, in radians. + The center point. + The skew matrix. + + + Creates a translation matrix from the specified 2-dimensional vector. + The translation position. + The translation matrix. + + + Creates a translation matrix from the specified X and Y components. + The X position. + The Y position. + The translation matrix. + + + Returns a value that indicates whether this instance and another 3x2 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant for this matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + The multiplicative identify matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Represents a 4x4 matrix. + + + Creates a object from a specified object. + A 3x2 matrix. + + + Creates a 4x4 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the third element in the first row. + The value to assign to the fourth element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the third element in the second row. + The value to assign to the third element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + The value to assign to the third element in the third row. + The value to assign to the fourth element in the third row. + The value to assign to the first element in the fourth row. + The value to assign to the second element in the fourth row. + The value to assign to the third element in the fourth row. + The value to assign to the fourth element in the fourth row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a spherical billboard that rotates around a specified object position. + The position of the object that the billboard will rotate around. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard. + + + Creates a cylindrical billboard that rotates around a specified axis. + The position of the object that the billboard will rotate around. + The position of the camera. + The axis to rotate the billboard around. + The forward vector of the camera. + The forward vector of the object. + The billboard matrix. + + + Creates a matrix that rotates around an arbitrary vector. + The axis to rotate around. + The angle to rotate around axis, in radians. + The rotation matrix. + + + Creates a rotation matrix from the specified Quaternion rotation value. + The source Quaternion. + The rotation matrix. + + + Creates a rotation matrix from the specified yaw, pitch, and roll. + The angle of rotation, in radians, around the Y axis. + The angle of rotation, in radians, around the X axis. + The angle of rotation, in radians, around the Z axis. + The rotation matrix. + + + Creates a view matrix. + The position of the camera. + The target towards which the camera is pointing. + The direction that is &quot;up&quot; from the camera&#39;s point of view. + The view matrix. + + + Creates an orthographic perspective matrix from the given view volume dimensions. + The width of the view volume. + The height of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a customized orthographic projection matrix. + The minimum X-value of the view volume. + The maximum X-value of the view volume. + The minimum Y-value of the view volume. + The maximum Y-value of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a perspective projection matrix from the given view volume dimensions. + The width of the view volume at the near view plane. + The height of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. + The field of view in the y direction, in radians. + The aspect ratio, defined as view space width divided by height. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + fieldOfView is less than or equal to zero. + -or- + fieldOfView is greater than or equal to . + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a customized perspective projection matrix. + The minimum x-value of the view volume at the near view plane. + The maximum x-value of the view volume at the near view plane. + The minimum y-value of the view volume at the near view plane. + The maximum y-value of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a matrix that reflects the coordinate system about a specified plane. + The plane about which to create a reflection. + A new matrix expressing the reflection. + + + Creates a matrix for rotating points around the X axis. + The amount, in radians, by which to rotate around the X axis. + The rotation matrix. + + + Creates a matrix for rotating points around the X axis from a center point. + The amount, in radians, by which to rotate around the X axis. + The center point. + The rotation matrix. + + + The amount, in radians, by which to rotate around the Y axis from a center point. + The amount, in radians, by which to rotate around the Y-axis. + The center point. + The rotation matrix. + + + Creates a matrix for rotating points around the Y axis. + The amount, in radians, by which to rotate around the Y-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis. + The amount, in radians, by which to rotate around the Z-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis from a center point. + The amount, in radians, by which to rotate around the Z-axis. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a uniform scaling matrix that scale equally on each axis. + The uniform scaling factor. + The scaling matrix. + + + Creates a scaling matrix with a center point. + The vector that contains the amount to scale on each axis. + The center point. + The scaling matrix. + + + Creates a uniform scaling matrix that scales equally on each axis with a center point. + The uniform scaling factor. + The center point. + The scaling matrix. + + + Creates a scaling matrix from the specified X, Y, and Z components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The center point. + The scaling matrix. + + + Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. + The direction from which the light that will cast the shadow is coming. + The plane onto which the new matrix should flatten geometry so as to cast a shadow. + A new matrix that can be used to flatten geometry onto the specified plane from the specified direction. + + + Creates a translation matrix from the specified 3-dimensional vector. + The amount to translate in each axis. + The translation matrix. + + + Creates a translation matrix from the specified X, Y, and Z components. + The amount to translate on the X axis. + The amount to translate on the Y axis. + The amount to translate on the Z axis. + The translation matrix. + + + Creates a world matrix with the specified parameters. + The position of the object. + The forward direction of the object. + The upward direction of the object. Its value is usually [0, 1, 0]. + The world matrix. + + + Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. + The source matrix. + When this method returns, contains the scaling component of the transformation matrix if the operation succeeded. + When this method returns, contains the rotation component of the transformation matrix if the operation succeeded. + When the method returns, contains the translation component of the transformation matrix if the operation succeeded. + true if matrix was decomposed successfully; otherwise, false. + + + Returns a value that indicates whether this instance and another 4x4 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant of the current 4x4 matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + Gets the multiplicative identity matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The third element of the first row. + + + + The fourth element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The third element of the second row. + + + + The fourth element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + The third element of the third row. + + + + The fourth element of the third row. + + + + The first element of the fourth row. + + + + The second element of the fourth row. + + + + The third element of the fourth row. + + + + The fourth element of the fourth row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to care + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Transforms the specified matrix by applying the specified Quaternion rotation. + The matrix to transform. + The rotation t apply. + The transformed matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Transposes the rows and columns of a matrix. + The matrix to transpose. + The transposed matrix. + + + Represents a three-dimensional plane. + + + Creates a object from a specified four-dimensional vector. + A vector whose first three elements describe the normal vector, and whose defines the distance along that normal from the origin. + + + Creates a object from a specified normal and the distance along the normal from the origin. + The plane&#39;s normal vector. + The plane&#39;s distance from the origin along its normal vector. + + + Creates a object from the X, Y, and Z components of its normal, and its distance from the origin on that normal. + The X component of the normal. + The Y component of the normal. + The Z component of the normal. + The distance of the plane along its normal from the origin. + + + Creates a object that contains three specified points. + The first point defining the plane. + The second point defining the plane. + The third point defining the plane. + The plane containing the three points. + + + The distance of the plane along its normal from the origin. + + + + Calculates the dot product of a plane and a 4-dimensional vector. + The plane. + The four-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the normal vector of this plane plus the distance () value of the plane. + The plane. + The 3-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the vector of this plane. + The plane. + The three-dimensional vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another plane object are equal. + The other plane. + true if the two planes are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + The normal vector of the plane. + + + + Creates a new object whose normal vector is the source plane&#39;s normal vector normalized. + The source plane. + The normalized plane. + + + Returns a value that indicates whether two planes are equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether two planes are not equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the string representation of this plane object. + A string that represents this object. + + + Transforms a normalized plane by a 4x4 matrix. + The normalized plane to transform. + The transformation matrix to apply to plane. + The transformed plane. + + + Transforms a normalized plane by a Quaternion rotation. + The normalized plane to transform. + The Quaternion rotation to apply to the plane. + A new plane that results from applying the Quaternion rotation. + + + Represents a vector that is used to encode three-dimensional physical rotations. + + + Creates a quaternion from the specified vector and rotation parts. + The vector part of the quaternion. + The rotation part of the quaternion. + + + Constructs a quaternion from the specified components. + The value to assign to the X component of the quaternion. + The value to assign to the Y component of the quaternion. + The value to assign to the Z component of the quaternion. + The value to assign to the W component of the quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Concatenates two quaternions. + The first quaternion rotation in the series. + The second quaternion rotation in the series. + A new quaternion representing the concatenation of the value1 rotation followed by the value2 rotation. + + + Returns the conjugate of a specified quaternion. + The quaternion. + A new quaternion that is the conjugate of value. + + + Creates a quaternion from a vector and an angle to rotate about the vector. + The vector to rotate around. + The angle, in radians, to rotate around the vector. + The newly created quaternion. + + + Creates a quaternion from the specified rotation matrix. + The rotation matrix. + The newly created quaternion. + + + Creates a new quaternion from the given yaw, pitch, and roll. + The yaw angle, in radians, around the Y axis. + The pitch angle, in radians, around the X axis. + The roll angle, in radians, around the Z axis. + The resulting quaternion. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Calculates the dot product of two quaternions. + The first quaternion. + The second quaternion. + The dot product. + + + Returns a value that indicates whether this instance and another quaternion are equal. + The other quaternion. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Gets a quaternion that represents no rotation. + A quaternion whose values are (0, 0, 0, 1). + + + Returns the inverse of a quaternion. + The quaternion. + The inverted quaternion. + + + Gets a value that indicates whether the current instance is the identity quaternion. + true if the current instance is the identity quaternion; otherwise, false. + + + Calculates the length of the quaternion. + The computed length of the quaternion. + + + Calculates the squared length of the quaternion. + The length squared of the quaternion. + + + Performs a linear interpolation between two quaternions based on a value that specifies the weighting of the second quaternion. + The first quaternion. + The second quaternion. + The relative weight of quaternion2 in the interpolation. + The interpolated quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Divides each component of a specified by its length. + The quaternion to normalize. + The normalized quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Returns a value that indicates whether two quaternions are equal. + The first quaternion to compare. + The second quaternion to compare. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether two quaternions are not equal. + The first quaternion to compare. + The second quaternion to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Interpolates between two quaternions, using spherical linear interpolation. + The first quaternion. + The second quaternion. + The relative weight of the second quaternion in the interpolation. + The interpolated quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this quaternion. + The string representation of this quaternion. + + + The rotation component of the quaternion. + + + + The X value of the vector component of the quaternion. + + + + The Y value of the vector component of the quaternion. + + + + The Z value of the vector component of the quaternion. + + + + Represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms. + The vector type. T can be any primitive numeric type. + + + Creates a vector whose components are of a specified type. + The numeric type that defines the type of the components in the vector. + + + Creates a vector from a specified array. + A numeric array. + values is null. + + + Creates a vector from a specified array starting at a specified index position. + A numeric array. + The starting index position from which to create the vector. + values is null. + index is less than zero. + -or- + The length of values minus index is less than . + + + Copies the vector instance to a specified destination array. + The array to receive a copy of the vector values. + destination is null. + The number of elements in the current vector is greater than the number of elements available in the destination array. + + + Copies the vector instance to a specified destination array starting at a specified index position. + The array to receive a copy of the vector values. + The starting index in destination at which to begin the copy operation. + destination is null. + The number of elements in the current instance is greater than the number of elements available from startIndex to the end of the destination array. + index is less than zero or greater than the last index in destination. + + + Returns the number of elements stored in the vector. + The number of elements stored in the vector. + Access to the property getter via reflection is not supported. + + + Returns a value that indicates whether this instance is equal to a specified vector. + The vector to compare with this instance. + true if the current instance and other are equal; otherwise, false. + + + Returns a value that indicates whether this instance is equal to a specified object. + The object to compare with this instance. + true if the current instance and obj are equal; otherwise, false. The method returns false if obj is null, or if obj is a vector of a different type than the current instance. + + + Returns the hash code for this instance. + The hash code. + + + Gets the element at a specified index. + The index of the element to return. + The element at index index. + index is less than zero. + -or- + index is greater than or equal to . + + + Returns a vector containing all ones. + A vector containing all ones. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Returns a new vector by performing a bitwise And operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise And of left and right. + + + Returns a new vector by performing a bitwise Or operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise Or of the elements in left and right. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Returns a value that indicates whether each pair of elements in two specified vectors are equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a new vector by performing a bitwise XOr operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise XOr of the elements in left and right. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Returns a value that indicates whether any single pair of elements in the specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if any element pairs in left and right are equal. false if no element pairs are equal. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar value. + The source vector. + A scalar value. + The scaled vector. + + + Multiplies a vector by the given scalar. + The scalar value. + The source vector. + The scaled vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The one&#39;s complement vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates a given vector. + The vector to negate. + The negated vector. + + + Returns the string representation of this vector using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Returns the string representation of this vector using default formatting. + The string representation of this vector. + + + Returns the string representation of this vector using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns a vector containing all zeroes. + A vector containing all zeroes. + + + Provides a collection of static convenience methods for creating, manipulating, combining, and converting generic vectors. + + + Returns a new vector whose elements are the absolute values of the given vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The absolute value vector. + + + Returns a new vector whose values are the sum of each pair of elements from two given vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The summed vector. + + + Returns a new vector by performing a bitwise And Not operation on each pair of corresponding elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a double-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of signed bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a single-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Returns a new vector by performing a bitwise And operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector by performing a bitwise Or operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Creates a new single-precision vector with elements selected between two specified single-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new double-precision vector with elements selected between two specified double-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new vector of a specified type with elements selected between two specified source vectors of the same type based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The vector type. T can be any primitive numeric type. + The new vector with elements selected based on the mask. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose values are the result of dividing the first vector&#39;s elements by the corresponding elements in the second vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The divided vector. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The dot product. + + + Returns a new integral vector whose elements signal whether the elements in two specified double-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified integral vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in two specified long integer vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified single-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in two specified vectors of the same type are equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether each pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left and right are equal; otherwise, false. + + + Returns a value that indicates whether any single pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element pair in left and right is equal; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are greater than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are greater than their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than their corresponding elements in the second vector of the same time. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the single-precision floating-point second vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than or equal to their corresponding elements in the second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than or equal to their corresponding elements in the second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than or equal to their corresponding elements in the second vector of the same type. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than or equal to all the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than or equal to the corresponding element in right; otherwise, false. + + + Gets a value that indicates whether vector operations are subject to hardware acceleration through JIT intrinsic support. + true if vector operations are subject to hardware acceleration; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision vector are less than their corresponding elements in a second single-precision vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in one vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all of the elements in the first vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than or equal to their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than or equal to their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less or equal to their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are less than or equal to their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than or equal to the corresponding element in right; otherwise, false. + + + Returns a new vector whose elements are the maximum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The maximum vector. + + + Returns a new vector whose elements are the minimum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The minimum vector. + + + Returns a new vector whose values are a scalar value multiplied by each of the values of a specified vector. + The scalar value. + The vector. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + Returns a new vector whose values are the product of each pair of elements in two specified vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The product vector. + + + Returns a new vector whose values are the values of a specified vector each multiplied by a scalar value. + The vector. + The scalar value. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose elements are the negation of the corresponding element in the specified vector. + The source vector. + The vector type. T can be any primitive numeric type. + The negated vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector whose elements are the square roots of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The square root vector. + + + Returns a new vector whose values are the difference between the elements in the second vector and their corresponding elements in the first vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The difference vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector by performing a bitwise exclusive Or (XOr) operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Represents a vector with two single-precision floating-point values. + + + Creates a new object whose two elements have the same value. + The value to assign to both elements. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of the vector. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 2 elements are equal to one. + A vector whose two elements are equal to one (that is, it returns the vector (1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 3x2 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 3x2 matrix. + The source vector. + The matrix. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0). + The vector (1,0). + + + Gets the vector (0,1). + The vector (0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + Returns a vector whose 2 elements are equal to zero. + A vector whose two elements are equal to zero (that is, it returns the vector (0,0). + + + Represents a vector with three single-precision floating-point values. + + + Creates a new object whose three elements have the same value. + The value to assign to all three elements. + + + Creates a new object from the specified object and the specified value. + The vector with two elements. + The additional value to assign to the field. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the cross product of two vectors. + The first vector. + The second vector. + The cross product. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 3 elements are equal to one. + A vector whose three elements are equal to one (that is, it returns the vector (1,1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0,0). + The vector (1,0,0). + + + Gets the vector (0,1,0). + The vector (0,1,0).. + + + Gets the vector (0,0,1). + The vector (0,0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 3 elements are equal to zero. + A vector whose three elements are equal to zero (that is, it returns the vector (0,0,0). + + + Represents a vector with four single-precision floating-point values. + + + Creates a new object whose four elements have the same value. + The value to assign to all four elements. + + + Constructs a new object from the specified object and a W component. + The vector to use for the X, Y, and Z components. + The W component. + + + Creates a new object from the specified object and a Z and a W component. + The vector to use for the X and Y components. + The Z component. + The W component. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 4 elements are equal to one. + Returns . + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a four-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a four-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a three-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a two-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a two-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a three-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Gets the vector (0,0,0,1). + The vector (0,0,0,1). + + + Gets the vector (1,0,0,0). + The vector (1,0,0,0). + + + Gets the vector (0,1,0,0). + The vector (0,1,0,0).. + + + Gets a vector whose 4 elements are equal to zero. + The vector (0,0,1,0). + + + The W component of the vector. + + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 4 elements are equal to zero. + A vector whose four elements are equal to zero (that is, it returns the vector (0,0,0,0). + + + \ No newline at end of file diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/uap10.0.16299/_._ b/packages/System.Numerics.Vectors.4.5.0/lib/uap10.0.16299/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/xamarinios10/_._ b/packages/System.Numerics.Vectors.4.5.0/lib/xamarinios10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/xamarinmac20/_._ b/packages/System.Numerics.Vectors.4.5.0/lib/xamarinmac20/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/xamarintvos10/_._ b/packages/System.Numerics.Vectors.4.5.0/lib/xamarintvos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/lib/xamarinwatchos10/_._ b/packages/System.Numerics.Vectors.4.5.0/lib/xamarinwatchos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/MonoAndroid10/_._ b/packages/System.Numerics.Vectors.4.5.0/ref/MonoAndroid10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/MonoTouch10/_._ b/packages/System.Numerics.Vectors.4.5.0/ref/MonoTouch10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/net45/System.Numerics.Vectors.dll b/packages/System.Numerics.Vectors.4.5.0/ref/net45/System.Numerics.Vectors.dll new file mode 100644 index 0000000..e237afb Binary files /dev/null and b/packages/System.Numerics.Vectors.4.5.0/ref/net45/System.Numerics.Vectors.dll differ diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/net45/System.Numerics.Vectors.xml b/packages/System.Numerics.Vectors.4.5.0/ref/net45/System.Numerics.Vectors.xml new file mode 100644 index 0000000..da34d39 --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/ref/net45/System.Numerics.Vectors.xml @@ -0,0 +1,2621 @@ + + + System.Numerics.Vectors + + + + Represents a 3x2 matrix. + + + Creates a 3x2 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a rotation matrix using the given rotation in radians. + The amount of rotation, in radians. + The rotation matrix. + + + Creates a rotation matrix using the specified rotation in radians and a center point. + The amount of rotation, in radians. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified X and Y components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the specified scale with an offset from the specified center. + The uniform scale to use. + The center offset. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The center point. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the given scale. + The uniform scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale with an offset from the specified center point. + The scale to use. + The center offset. + The scaling matrix. + + + Creates a skew matrix from the specified angles in radians. + The X angle, in radians. + The Y angle, in radians. + The skew matrix. + + + Creates a skew matrix from the specified angles in radians and a center point. + The X angle, in radians. + The Y angle, in radians. + The center point. + The skew matrix. + + + Creates a translation matrix from the specified 2-dimensional vector. + The translation position. + The translation matrix. + + + Creates a translation matrix from the specified X and Y components. + The X position. + The Y position. + The translation matrix. + + + Returns a value that indicates whether this instance and another 3x2 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant for this matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + The multiplicative identify matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Represents a 4x4 matrix. + + + Creates a object from a specified object. + A 3x2 matrix. + + + Creates a 4x4 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the third element in the first row. + The value to assign to the fourth element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the third element in the second row. + The value to assign to the third element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + The value to assign to the third element in the third row. + The value to assign to the fourth element in the third row. + The value to assign to the first element in the fourth row. + The value to assign to the second element in the fourth row. + The value to assign to the third element in the fourth row. + The value to assign to the fourth element in the fourth row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a spherical billboard that rotates around a specified object position. + The position of the object that the billboard will rotate around. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard. + + + Creates a cylindrical billboard that rotates around a specified axis. + The position of the object that the billboard will rotate around. + The position of the camera. + The axis to rotate the billboard around. + The forward vector of the camera. + The forward vector of the object. + The billboard matrix. + + + Creates a matrix that rotates around an arbitrary vector. + The axis to rotate around. + The angle to rotate around axis, in radians. + The rotation matrix. + + + Creates a rotation matrix from the specified Quaternion rotation value. + The source Quaternion. + The rotation matrix. + + + Creates a rotation matrix from the specified yaw, pitch, and roll. + The angle of rotation, in radians, around the Y axis. + The angle of rotation, in radians, around the X axis. + The angle of rotation, in radians, around the Z axis. + The rotation matrix. + + + Creates a view matrix. + The position of the camera. + The target towards which the camera is pointing. + The direction that is &quot;up&quot; from the camera&#39;s point of view. + The view matrix. + + + Creates an orthographic perspective matrix from the given view volume dimensions. + The width of the view volume. + The height of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a customized orthographic projection matrix. + The minimum X-value of the view volume. + The maximum X-value of the view volume. + The minimum Y-value of the view volume. + The maximum Y-value of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a perspective projection matrix from the given view volume dimensions. + The width of the view volume at the near view plane. + The height of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. + The field of view in the y direction, in radians. + The aspect ratio, defined as view space width divided by height. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + fieldOfView is less than or equal to zero. + -or- + fieldOfView is greater than or equal to . + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a customized perspective projection matrix. + The minimum x-value of the view volume at the near view plane. + The maximum x-value of the view volume at the near view plane. + The minimum y-value of the view volume at the near view plane. + The maximum y-value of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a matrix that reflects the coordinate system about a specified plane. + The plane about which to create a reflection. + A new matrix expressing the reflection. + + + Creates a matrix for rotating points around the X axis. + The amount, in radians, by which to rotate around the X axis. + The rotation matrix. + + + Creates a matrix for rotating points around the X axis from a center point. + The amount, in radians, by which to rotate around the X axis. + The center point. + The rotation matrix. + + + The amount, in radians, by which to rotate around the Y axis from a center point. + The amount, in radians, by which to rotate around the Y-axis. + The center point. + The rotation matrix. + + + Creates a matrix for rotating points around the Y axis. + The amount, in radians, by which to rotate around the Y-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis. + The amount, in radians, by which to rotate around the Z-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis from a center point. + The amount, in radians, by which to rotate around the Z-axis. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a uniform scaling matrix that scale equally on each axis. + The uniform scaling factor. + The scaling matrix. + + + Creates a scaling matrix with a center point. + The vector that contains the amount to scale on each axis. + The center point. + The scaling matrix. + + + Creates a uniform scaling matrix that scales equally on each axis with a center point. + The uniform scaling factor. + The center point. + The scaling matrix. + + + Creates a scaling matrix from the specified X, Y, and Z components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The center point. + The scaling matrix. + + + Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. + The direction from which the light that will cast the shadow is coming. + The plane onto which the new matrix should flatten geometry so as to cast a shadow. + A new matrix that can be used to flatten geometry onto the specified plane from the specified direction. + + + Creates a translation matrix from the specified 3-dimensional vector. + The amount to translate in each axis. + The translation matrix. + + + Creates a translation matrix from the specified X, Y, and Z components. + The amount to translate on the X axis. + The amount to translate on the Y axis. + The amount to translate on the Z axis. + The translation matrix. + + + Creates a world matrix with the specified parameters. + The position of the object. + The forward direction of the object. + The upward direction of the object. Its value is usually [0, 1, 0]. + The world matrix. + + + Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. + The source matrix. + When this method returns, contains the scaling component of the transformation matrix if the operation succeeded. + When this method returns, contains the rotation component of the transformation matrix if the operation succeeded. + When the method returns, contains the translation component of the transformation matrix if the operation succeeded. + true if matrix was decomposed successfully; otherwise, false. + + + Returns a value that indicates whether this instance and another 4x4 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant of the current 4x4 matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + Gets the multiplicative identity matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The third element of the first row. + + + + The fourth element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The third element of the second row. + + + + The fourth element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + The third element of the third row. + + + + The fourth element of the third row. + + + + The first element of the fourth row. + + + + The second element of the fourth row. + + + + The third element of the fourth row. + + + + The fourth element of the fourth row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to care + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Transforms the specified matrix by applying the specified Quaternion rotation. + The matrix to transform. + The rotation t apply. + The transformed matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Transposes the rows and columns of a matrix. + The matrix to transpose. + The transposed matrix. + + + Represents a three-dimensional plane. + + + Creates a object from a specified four-dimensional vector. + A vector whose first three elements describe the normal vector, and whose defines the distance along that normal from the origin. + + + Creates a object from a specified normal and the distance along the normal from the origin. + The plane&#39;s normal vector. + The plane&#39;s distance from the origin along its normal vector. + + + Creates a object from the X, Y, and Z components of its normal, and its distance from the origin on that normal. + The X component of the normal. + The Y component of the normal. + The Z component of the normal. + The distance of the plane along its normal from the origin. + + + Creates a object that contains three specified points. + The first point defining the plane. + The second point defining the plane. + The third point defining the plane. + The plane containing the three points. + + + The distance of the plane along its normal from the origin. + + + + Calculates the dot product of a plane and a 4-dimensional vector. + The plane. + The four-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the normal vector of this plane plus the distance () value of the plane. + The plane. + The 3-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the vector of this plane. + The plane. + The three-dimensional vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another plane object are equal. + The other plane. + true if the two planes are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + The normal vector of the plane. + + + + Creates a new object whose normal vector is the source plane&#39;s normal vector normalized. + The source plane. + The normalized plane. + + + Returns a value that indicates whether two planes are equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether two planes are not equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the string representation of this plane object. + A string that represents this object. + + + Transforms a normalized plane by a 4x4 matrix. + The normalized plane to transform. + The transformation matrix to apply to plane. + The transformed plane. + + + Transforms a normalized plane by a Quaternion rotation. + The normalized plane to transform. + The Quaternion rotation to apply to the plane. + A new plane that results from applying the Quaternion rotation. + + + Represents a vector that is used to encode three-dimensional physical rotations. + + + Creates a quaternion from the specified vector and rotation parts. + The vector part of the quaternion. + The rotation part of the quaternion. + + + Constructs a quaternion from the specified components. + The value to assign to the X component of the quaternion. + The value to assign to the Y component of the quaternion. + The value to assign to the Z component of the quaternion. + The value to assign to the W component of the quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Concatenates two quaternions. + The first quaternion rotation in the series. + The second quaternion rotation in the series. + A new quaternion representing the concatenation of the value1 rotation followed by the value2 rotation. + + + Returns the conjugate of a specified quaternion. + The quaternion. + A new quaternion that is the conjugate of value. + + + Creates a quaternion from a vector and an angle to rotate about the vector. + The vector to rotate around. + The angle, in radians, to rotate around the vector. + The newly created quaternion. + + + Creates a quaternion from the specified rotation matrix. + The rotation matrix. + The newly created quaternion. + + + Creates a new quaternion from the given yaw, pitch, and roll. + The yaw angle, in radians, around the Y axis. + The pitch angle, in radians, around the X axis. + The roll angle, in radians, around the Z axis. + The resulting quaternion. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Calculates the dot product of two quaternions. + The first quaternion. + The second quaternion. + The dot product. + + + Returns a value that indicates whether this instance and another quaternion are equal. + The other quaternion. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Gets a quaternion that represents no rotation. + A quaternion whose values are (0, 0, 0, 1). + + + Returns the inverse of a quaternion. + The quaternion. + The inverted quaternion. + + + Gets a value that indicates whether the current instance is the identity quaternion. + true if the current instance is the identity quaternion; otherwise, false. + + + Calculates the length of the quaternion. + The computed length of the quaternion. + + + Calculates the squared length of the quaternion. + The length squared of the quaternion. + + + Performs a linear interpolation between two quaternions based on a value that specifies the weighting of the second quaternion. + The first quaternion. + The second quaternion. + The relative weight of quaternion2 in the interpolation. + The interpolated quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Divides each component of a specified by its length. + The quaternion to normalize. + The normalized quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Returns a value that indicates whether two quaternions are equal. + The first quaternion to compare. + The second quaternion to compare. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether two quaternions are not equal. + The first quaternion to compare. + The second quaternion to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Interpolates between two quaternions, using spherical linear interpolation. + The first quaternion. + The second quaternion. + The relative weight of the second quaternion in the interpolation. + The interpolated quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this quaternion. + The string representation of this quaternion. + + + The rotation component of the quaternion. + + + + The X value of the vector component of the quaternion. + + + + The Y value of the vector component of the quaternion. + + + + The Z value of the vector component of the quaternion. + + + + Represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms. + The vector type. T can be any primitive numeric type. + + + Creates a vector whose components are of a specified type. + The numeric type that defines the type of the components in the vector. + + + Creates a vector from a specified array. + A numeric array. + values is null. + + + Creates a vector from a specified array starting at a specified index position. + A numeric array. + The starting index position from which to create the vector. + values is null. + index is less than zero. + -or- + The length of values minus index is less than . + + + Copies the vector instance to a specified destination array. + The array to receive a copy of the vector values. + destination is null. + The number of elements in the current vector is greater than the number of elements available in the destination array. + + + Copies the vector instance to a specified destination array starting at a specified index position. + The array to receive a copy of the vector values. + The starting index in destination at which to begin the copy operation. + destination is null. + The number of elements in the current instance is greater than the number of elements available from startIndex to the end of the destination array. + index is less than zero or greater than the last index in destination. + + + Returns the number of elements stored in the vector. + The number of elements stored in the vector. + Access to the property getter via reflection is not supported. + + + Returns a value that indicates whether this instance is equal to a specified vector. + The vector to compare with this instance. + true if the current instance and other are equal; otherwise, false. + + + Returns a value that indicates whether this instance is equal to a specified object. + The object to compare with this instance. + true if the current instance and obj are equal; otherwise, false. The method returns false if obj is null, or if obj is a vector of a different type than the current instance. + + + Returns the hash code for this instance. + The hash code. + + + Gets the element at a specified index. + The index of the element to return. + The element at index index. + index is less than zero. + -or- + index is greater than or equal to . + + + Returns a vector containing all ones. + A vector containing all ones. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Returns a new vector by performing a bitwise And operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise And of left and right. + + + Returns a new vector by performing a bitwise Or operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise Or of the elements in left and right. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Returns a value that indicates whether each pair of elements in two specified vectors are equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a new vector by performing a bitwise XOr operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise XOr of the elements in left and right. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Returns a value that indicates whether any single pair of elements in the specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if any element pairs in left and right are equal. false if no element pairs are equal. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar value. + The source vector. + A scalar value. + The scaled vector. + + + Multiplies a vector by the given scalar. + The scalar value. + The source vector. + The scaled vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The one&#39;s complement vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates a given vector. + The vector to negate. + The negated vector. + + + Returns the string representation of this vector using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Returns the string representation of this vector using default formatting. + The string representation of this vector. + + + Returns the string representation of this vector using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns a vector containing all zeroes. + A vector containing all zeroes. + + + Provides a collection of static convenience methods for creating, manipulating, combining, and converting generic vectors. + + + Returns a new vector whose elements are the absolute values of the given vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The absolute value vector. + + + Returns a new vector whose values are the sum of each pair of elements from two given vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The summed vector. + + + Returns a new vector by performing a bitwise And Not operation on each pair of corresponding elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a double-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of signed bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a single-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Returns a new vector by performing a bitwise And operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector by performing a bitwise Or operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Creates a new single-precision vector with elements selected between two specified single-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new double-precision vector with elements selected between two specified double-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new vector of a specified type with elements selected between two specified source vectors of the same type based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The vector type. T can be any primitive numeric type. + The new vector with elements selected based on the mask. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose values are the result of dividing the first vector&#39;s elements by the corresponding elements in the second vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The divided vector. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The dot product. + + + Returns a new integral vector whose elements signal whether the elements in two specified double-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified integral vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in two specified long integer vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified single-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in two specified vectors of the same type are equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether each pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left and right are equal; otherwise, false. + + + Returns a value that indicates whether any single pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element pair in left and right is equal; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are greater than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are greater than their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than their corresponding elements in the second vector of the same time. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the single-precision floating-point second vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than or equal to their corresponding elements in the second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than or equal to their corresponding elements in the second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than or equal to their corresponding elements in the second vector of the same type. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than or equal to all the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than or equal to the corresponding element in right; otherwise, false. + + + Gets a value that indicates whether vector operations are subject to hardware acceleration through JIT intrinsic support. + true if vector operations are subject to hardware acceleration; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision vector are less than their corresponding elements in a second single-precision vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in one vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all of the elements in the first vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than or equal to their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than or equal to their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less or equal to their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are less than or equal to their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than or equal to the corresponding element in right; otherwise, false. + + + Returns a new vector whose elements are the maximum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The maximum vector. + + + Returns a new vector whose elements are the minimum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The minimum vector. + + + Returns a new vector whose values are a scalar value multiplied by each of the values of a specified vector. + The scalar value. + The vector. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + Returns a new vector whose values are the product of each pair of elements in two specified vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The product vector. + + + Returns a new vector whose values are the values of a specified vector each multiplied by a scalar value. + The vector. + The scalar value. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose elements are the negation of the corresponding element in the specified vector. + The source vector. + The vector type. T can be any primitive numeric type. + The negated vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector whose elements are the square roots of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The square root vector. + + + Returns a new vector whose values are the difference between the elements in the second vector and their corresponding elements in the first vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The difference vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector by performing a bitwise exclusive Or (XOr) operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Represents a vector with two single-precision floating-point values. + + + Creates a new object whose two elements have the same value. + The value to assign to both elements. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of the vector. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 2 elements are equal to one. + A vector whose two elements are equal to one (that is, it returns the vector (1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 3x2 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 3x2 matrix. + The source vector. + The matrix. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0). + The vector (1,0). + + + Gets the vector (0,1). + The vector (0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + Returns a vector whose 2 elements are equal to zero. + A vector whose two elements are equal to zero (that is, it returns the vector (0,0). + + + Represents a vector with three single-precision floating-point values. + + + Creates a new object whose three elements have the same value. + The value to assign to all three elements. + + + Creates a new object from the specified object and the specified value. + The vector with two elements. + The additional value to assign to the field. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the cross product of two vectors. + The first vector. + The second vector. + The cross product. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 3 elements are equal to one. + A vector whose three elements are equal to one (that is, it returns the vector (1,1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0,0). + The vector (1,0,0). + + + Gets the vector (0,1,0). + The vector (0,1,0).. + + + Gets the vector (0,0,1). + The vector (0,0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 3 elements are equal to zero. + A vector whose three elements are equal to zero (that is, it returns the vector (0,0,0). + + + Represents a vector with four single-precision floating-point values. + + + Creates a new object whose four elements have the same value. + The value to assign to all four elements. + + + Constructs a new object from the specified object and a W component. + The vector to use for the X, Y, and Z components. + The W component. + + + Creates a new object from the specified object and a Z and a W component. + The vector to use for the X and Y components. + The Z component. + The W component. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 4 elements are equal to one. + Returns . + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a four-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a four-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a three-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a two-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a two-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a three-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Gets the vector (0,0,0,1). + The vector (0,0,0,1). + + + Gets the vector (1,0,0,0). + The vector (1,0,0,0). + + + Gets the vector (0,1,0,0). + The vector (0,1,0,0).. + + + Gets a vector whose 4 elements are equal to zero. + The vector (0,0,1,0). + + + The W component of the vector. + + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 4 elements are equal to zero. + A vector whose four elements are equal to zero (that is, it returns the vector (0,0,0,0). + + + \ No newline at end of file diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/net46/System.Numerics.Vectors.dll b/packages/System.Numerics.Vectors.4.5.0/ref/net46/System.Numerics.Vectors.dll new file mode 100644 index 0000000..470f2f3 Binary files /dev/null and b/packages/System.Numerics.Vectors.4.5.0/ref/net46/System.Numerics.Vectors.dll differ diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/net46/System.Numerics.Vectors.xml b/packages/System.Numerics.Vectors.4.5.0/ref/net46/System.Numerics.Vectors.xml new file mode 100644 index 0000000..da34d39 --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/ref/net46/System.Numerics.Vectors.xml @@ -0,0 +1,2621 @@ + + + System.Numerics.Vectors + + + + Represents a 3x2 matrix. + + + Creates a 3x2 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a rotation matrix using the given rotation in radians. + The amount of rotation, in radians. + The rotation matrix. + + + Creates a rotation matrix using the specified rotation in radians and a center point. + The amount of rotation, in radians. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified X and Y components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the specified scale with an offset from the specified center. + The uniform scale to use. + The center offset. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The center point. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the given scale. + The uniform scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale with an offset from the specified center point. + The scale to use. + The center offset. + The scaling matrix. + + + Creates a skew matrix from the specified angles in radians. + The X angle, in radians. + The Y angle, in radians. + The skew matrix. + + + Creates a skew matrix from the specified angles in radians and a center point. + The X angle, in radians. + The Y angle, in radians. + The center point. + The skew matrix. + + + Creates a translation matrix from the specified 2-dimensional vector. + The translation position. + The translation matrix. + + + Creates a translation matrix from the specified X and Y components. + The X position. + The Y position. + The translation matrix. + + + Returns a value that indicates whether this instance and another 3x2 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant for this matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + The multiplicative identify matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Represents a 4x4 matrix. + + + Creates a object from a specified object. + A 3x2 matrix. + + + Creates a 4x4 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the third element in the first row. + The value to assign to the fourth element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the third element in the second row. + The value to assign to the third element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + The value to assign to the third element in the third row. + The value to assign to the fourth element in the third row. + The value to assign to the first element in the fourth row. + The value to assign to the second element in the fourth row. + The value to assign to the third element in the fourth row. + The value to assign to the fourth element in the fourth row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a spherical billboard that rotates around a specified object position. + The position of the object that the billboard will rotate around. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard. + + + Creates a cylindrical billboard that rotates around a specified axis. + The position of the object that the billboard will rotate around. + The position of the camera. + The axis to rotate the billboard around. + The forward vector of the camera. + The forward vector of the object. + The billboard matrix. + + + Creates a matrix that rotates around an arbitrary vector. + The axis to rotate around. + The angle to rotate around axis, in radians. + The rotation matrix. + + + Creates a rotation matrix from the specified Quaternion rotation value. + The source Quaternion. + The rotation matrix. + + + Creates a rotation matrix from the specified yaw, pitch, and roll. + The angle of rotation, in radians, around the Y axis. + The angle of rotation, in radians, around the X axis. + The angle of rotation, in radians, around the Z axis. + The rotation matrix. + + + Creates a view matrix. + The position of the camera. + The target towards which the camera is pointing. + The direction that is &quot;up&quot; from the camera&#39;s point of view. + The view matrix. + + + Creates an orthographic perspective matrix from the given view volume dimensions. + The width of the view volume. + The height of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a customized orthographic projection matrix. + The minimum X-value of the view volume. + The maximum X-value of the view volume. + The minimum Y-value of the view volume. + The maximum Y-value of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a perspective projection matrix from the given view volume dimensions. + The width of the view volume at the near view plane. + The height of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. + The field of view in the y direction, in radians. + The aspect ratio, defined as view space width divided by height. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + fieldOfView is less than or equal to zero. + -or- + fieldOfView is greater than or equal to . + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a customized perspective projection matrix. + The minimum x-value of the view volume at the near view plane. + The maximum x-value of the view volume at the near view plane. + The minimum y-value of the view volume at the near view plane. + The maximum y-value of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a matrix that reflects the coordinate system about a specified plane. + The plane about which to create a reflection. + A new matrix expressing the reflection. + + + Creates a matrix for rotating points around the X axis. + The amount, in radians, by which to rotate around the X axis. + The rotation matrix. + + + Creates a matrix for rotating points around the X axis from a center point. + The amount, in radians, by which to rotate around the X axis. + The center point. + The rotation matrix. + + + The amount, in radians, by which to rotate around the Y axis from a center point. + The amount, in radians, by which to rotate around the Y-axis. + The center point. + The rotation matrix. + + + Creates a matrix for rotating points around the Y axis. + The amount, in radians, by which to rotate around the Y-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis. + The amount, in radians, by which to rotate around the Z-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis from a center point. + The amount, in radians, by which to rotate around the Z-axis. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a uniform scaling matrix that scale equally on each axis. + The uniform scaling factor. + The scaling matrix. + + + Creates a scaling matrix with a center point. + The vector that contains the amount to scale on each axis. + The center point. + The scaling matrix. + + + Creates a uniform scaling matrix that scales equally on each axis with a center point. + The uniform scaling factor. + The center point. + The scaling matrix. + + + Creates a scaling matrix from the specified X, Y, and Z components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The center point. + The scaling matrix. + + + Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. + The direction from which the light that will cast the shadow is coming. + The plane onto which the new matrix should flatten geometry so as to cast a shadow. + A new matrix that can be used to flatten geometry onto the specified plane from the specified direction. + + + Creates a translation matrix from the specified 3-dimensional vector. + The amount to translate in each axis. + The translation matrix. + + + Creates a translation matrix from the specified X, Y, and Z components. + The amount to translate on the X axis. + The amount to translate on the Y axis. + The amount to translate on the Z axis. + The translation matrix. + + + Creates a world matrix with the specified parameters. + The position of the object. + The forward direction of the object. + The upward direction of the object. Its value is usually [0, 1, 0]. + The world matrix. + + + Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. + The source matrix. + When this method returns, contains the scaling component of the transformation matrix if the operation succeeded. + When this method returns, contains the rotation component of the transformation matrix if the operation succeeded. + When the method returns, contains the translation component of the transformation matrix if the operation succeeded. + true if matrix was decomposed successfully; otherwise, false. + + + Returns a value that indicates whether this instance and another 4x4 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant of the current 4x4 matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + Gets the multiplicative identity matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The third element of the first row. + + + + The fourth element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The third element of the second row. + + + + The fourth element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + The third element of the third row. + + + + The fourth element of the third row. + + + + The first element of the fourth row. + + + + The second element of the fourth row. + + + + The third element of the fourth row. + + + + The fourth element of the fourth row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to care + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Transforms the specified matrix by applying the specified Quaternion rotation. + The matrix to transform. + The rotation t apply. + The transformed matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Transposes the rows and columns of a matrix. + The matrix to transpose. + The transposed matrix. + + + Represents a three-dimensional plane. + + + Creates a object from a specified four-dimensional vector. + A vector whose first three elements describe the normal vector, and whose defines the distance along that normal from the origin. + + + Creates a object from a specified normal and the distance along the normal from the origin. + The plane&#39;s normal vector. + The plane&#39;s distance from the origin along its normal vector. + + + Creates a object from the X, Y, and Z components of its normal, and its distance from the origin on that normal. + The X component of the normal. + The Y component of the normal. + The Z component of the normal. + The distance of the plane along its normal from the origin. + + + Creates a object that contains three specified points. + The first point defining the plane. + The second point defining the plane. + The third point defining the plane. + The plane containing the three points. + + + The distance of the plane along its normal from the origin. + + + + Calculates the dot product of a plane and a 4-dimensional vector. + The plane. + The four-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the normal vector of this plane plus the distance () value of the plane. + The plane. + The 3-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the vector of this plane. + The plane. + The three-dimensional vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another plane object are equal. + The other plane. + true if the two planes are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + The normal vector of the plane. + + + + Creates a new object whose normal vector is the source plane&#39;s normal vector normalized. + The source plane. + The normalized plane. + + + Returns a value that indicates whether two planes are equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether two planes are not equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the string representation of this plane object. + A string that represents this object. + + + Transforms a normalized plane by a 4x4 matrix. + The normalized plane to transform. + The transformation matrix to apply to plane. + The transformed plane. + + + Transforms a normalized plane by a Quaternion rotation. + The normalized plane to transform. + The Quaternion rotation to apply to the plane. + A new plane that results from applying the Quaternion rotation. + + + Represents a vector that is used to encode three-dimensional physical rotations. + + + Creates a quaternion from the specified vector and rotation parts. + The vector part of the quaternion. + The rotation part of the quaternion. + + + Constructs a quaternion from the specified components. + The value to assign to the X component of the quaternion. + The value to assign to the Y component of the quaternion. + The value to assign to the Z component of the quaternion. + The value to assign to the W component of the quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Concatenates two quaternions. + The first quaternion rotation in the series. + The second quaternion rotation in the series. + A new quaternion representing the concatenation of the value1 rotation followed by the value2 rotation. + + + Returns the conjugate of a specified quaternion. + The quaternion. + A new quaternion that is the conjugate of value. + + + Creates a quaternion from a vector and an angle to rotate about the vector. + The vector to rotate around. + The angle, in radians, to rotate around the vector. + The newly created quaternion. + + + Creates a quaternion from the specified rotation matrix. + The rotation matrix. + The newly created quaternion. + + + Creates a new quaternion from the given yaw, pitch, and roll. + The yaw angle, in radians, around the Y axis. + The pitch angle, in radians, around the X axis. + The roll angle, in radians, around the Z axis. + The resulting quaternion. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Calculates the dot product of two quaternions. + The first quaternion. + The second quaternion. + The dot product. + + + Returns a value that indicates whether this instance and another quaternion are equal. + The other quaternion. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Gets a quaternion that represents no rotation. + A quaternion whose values are (0, 0, 0, 1). + + + Returns the inverse of a quaternion. + The quaternion. + The inverted quaternion. + + + Gets a value that indicates whether the current instance is the identity quaternion. + true if the current instance is the identity quaternion; otherwise, false. + + + Calculates the length of the quaternion. + The computed length of the quaternion. + + + Calculates the squared length of the quaternion. + The length squared of the quaternion. + + + Performs a linear interpolation between two quaternions based on a value that specifies the weighting of the second quaternion. + The first quaternion. + The second quaternion. + The relative weight of quaternion2 in the interpolation. + The interpolated quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Divides each component of a specified by its length. + The quaternion to normalize. + The normalized quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Returns a value that indicates whether two quaternions are equal. + The first quaternion to compare. + The second quaternion to compare. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether two quaternions are not equal. + The first quaternion to compare. + The second quaternion to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Interpolates between two quaternions, using spherical linear interpolation. + The first quaternion. + The second quaternion. + The relative weight of the second quaternion in the interpolation. + The interpolated quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this quaternion. + The string representation of this quaternion. + + + The rotation component of the quaternion. + + + + The X value of the vector component of the quaternion. + + + + The Y value of the vector component of the quaternion. + + + + The Z value of the vector component of the quaternion. + + + + Represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms. + The vector type. T can be any primitive numeric type. + + + Creates a vector whose components are of a specified type. + The numeric type that defines the type of the components in the vector. + + + Creates a vector from a specified array. + A numeric array. + values is null. + + + Creates a vector from a specified array starting at a specified index position. + A numeric array. + The starting index position from which to create the vector. + values is null. + index is less than zero. + -or- + The length of values minus index is less than . + + + Copies the vector instance to a specified destination array. + The array to receive a copy of the vector values. + destination is null. + The number of elements in the current vector is greater than the number of elements available in the destination array. + + + Copies the vector instance to a specified destination array starting at a specified index position. + The array to receive a copy of the vector values. + The starting index in destination at which to begin the copy operation. + destination is null. + The number of elements in the current instance is greater than the number of elements available from startIndex to the end of the destination array. + index is less than zero or greater than the last index in destination. + + + Returns the number of elements stored in the vector. + The number of elements stored in the vector. + Access to the property getter via reflection is not supported. + + + Returns a value that indicates whether this instance is equal to a specified vector. + The vector to compare with this instance. + true if the current instance and other are equal; otherwise, false. + + + Returns a value that indicates whether this instance is equal to a specified object. + The object to compare with this instance. + true if the current instance and obj are equal; otherwise, false. The method returns false if obj is null, or if obj is a vector of a different type than the current instance. + + + Returns the hash code for this instance. + The hash code. + + + Gets the element at a specified index. + The index of the element to return. + The element at index index. + index is less than zero. + -or- + index is greater than or equal to . + + + Returns a vector containing all ones. + A vector containing all ones. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Returns a new vector by performing a bitwise And operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise And of left and right. + + + Returns a new vector by performing a bitwise Or operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise Or of the elements in left and right. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Returns a value that indicates whether each pair of elements in two specified vectors are equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a new vector by performing a bitwise XOr operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise XOr of the elements in left and right. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Returns a value that indicates whether any single pair of elements in the specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if any element pairs in left and right are equal. false if no element pairs are equal. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar value. + The source vector. + A scalar value. + The scaled vector. + + + Multiplies a vector by the given scalar. + The scalar value. + The source vector. + The scaled vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The one&#39;s complement vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates a given vector. + The vector to negate. + The negated vector. + + + Returns the string representation of this vector using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Returns the string representation of this vector using default formatting. + The string representation of this vector. + + + Returns the string representation of this vector using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns a vector containing all zeroes. + A vector containing all zeroes. + + + Provides a collection of static convenience methods for creating, manipulating, combining, and converting generic vectors. + + + Returns a new vector whose elements are the absolute values of the given vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The absolute value vector. + + + Returns a new vector whose values are the sum of each pair of elements from two given vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The summed vector. + + + Returns a new vector by performing a bitwise And Not operation on each pair of corresponding elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a double-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of signed bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a single-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Returns a new vector by performing a bitwise And operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector by performing a bitwise Or operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Creates a new single-precision vector with elements selected between two specified single-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new double-precision vector with elements selected between two specified double-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new vector of a specified type with elements selected between two specified source vectors of the same type based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The vector type. T can be any primitive numeric type. + The new vector with elements selected based on the mask. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose values are the result of dividing the first vector&#39;s elements by the corresponding elements in the second vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The divided vector. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The dot product. + + + Returns a new integral vector whose elements signal whether the elements in two specified double-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified integral vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in two specified long integer vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified single-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in two specified vectors of the same type are equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether each pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left and right are equal; otherwise, false. + + + Returns a value that indicates whether any single pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element pair in left and right is equal; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are greater than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are greater than their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than their corresponding elements in the second vector of the same time. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the single-precision floating-point second vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than or equal to their corresponding elements in the second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than or equal to their corresponding elements in the second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than or equal to their corresponding elements in the second vector of the same type. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than or equal to all the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than or equal to the corresponding element in right; otherwise, false. + + + Gets a value that indicates whether vector operations are subject to hardware acceleration through JIT intrinsic support. + true if vector operations are subject to hardware acceleration; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision vector are less than their corresponding elements in a second single-precision vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in one vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all of the elements in the first vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than or equal to their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than or equal to their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less or equal to their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are less than or equal to their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than or equal to the corresponding element in right; otherwise, false. + + + Returns a new vector whose elements are the maximum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The maximum vector. + + + Returns a new vector whose elements are the minimum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The minimum vector. + + + Returns a new vector whose values are a scalar value multiplied by each of the values of a specified vector. + The scalar value. + The vector. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + Returns a new vector whose values are the product of each pair of elements in two specified vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The product vector. + + + Returns a new vector whose values are the values of a specified vector each multiplied by a scalar value. + The vector. + The scalar value. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose elements are the negation of the corresponding element in the specified vector. + The source vector. + The vector type. T can be any primitive numeric type. + The negated vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector whose elements are the square roots of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The square root vector. + + + Returns a new vector whose values are the difference between the elements in the second vector and their corresponding elements in the first vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The difference vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector by performing a bitwise exclusive Or (XOr) operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Represents a vector with two single-precision floating-point values. + + + Creates a new object whose two elements have the same value. + The value to assign to both elements. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of the vector. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 2 elements are equal to one. + A vector whose two elements are equal to one (that is, it returns the vector (1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 3x2 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 3x2 matrix. + The source vector. + The matrix. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0). + The vector (1,0). + + + Gets the vector (0,1). + The vector (0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + Returns a vector whose 2 elements are equal to zero. + A vector whose two elements are equal to zero (that is, it returns the vector (0,0). + + + Represents a vector with three single-precision floating-point values. + + + Creates a new object whose three elements have the same value. + The value to assign to all three elements. + + + Creates a new object from the specified object and the specified value. + The vector with two elements. + The additional value to assign to the field. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the cross product of two vectors. + The first vector. + The second vector. + The cross product. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 3 elements are equal to one. + A vector whose three elements are equal to one (that is, it returns the vector (1,1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0,0). + The vector (1,0,0). + + + Gets the vector (0,1,0). + The vector (0,1,0).. + + + Gets the vector (0,0,1). + The vector (0,0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 3 elements are equal to zero. + A vector whose three elements are equal to zero (that is, it returns the vector (0,0,0). + + + Represents a vector with four single-precision floating-point values. + + + Creates a new object whose four elements have the same value. + The value to assign to all four elements. + + + Constructs a new object from the specified object and a W component. + The vector to use for the X, Y, and Z components. + The W component. + + + Creates a new object from the specified object and a Z and a W component. + The vector to use for the X and Y components. + The Z component. + The W component. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 4 elements are equal to one. + Returns . + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a four-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a four-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a three-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a two-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a two-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a three-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Gets the vector (0,0,0,1). + The vector (0,0,0,1). + + + Gets the vector (1,0,0,0). + The vector (1,0,0,0). + + + Gets the vector (0,1,0,0). + The vector (0,1,0,0).. + + + Gets a vector whose 4 elements are equal to zero. + The vector (0,0,1,0). + + + The W component of the vector. + + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 4 elements are equal to zero. + A vector whose four elements are equal to zero (that is, it returns the vector (0,0,0,0). + + + \ No newline at end of file diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/netcoreapp2.0/_._ b/packages/System.Numerics.Vectors.4.5.0/ref/netcoreapp2.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/netstandard1.0/System.Numerics.Vectors.dll b/packages/System.Numerics.Vectors.4.5.0/ref/netstandard1.0/System.Numerics.Vectors.dll new file mode 100644 index 0000000..d174da0 Binary files /dev/null and b/packages/System.Numerics.Vectors.4.5.0/ref/netstandard1.0/System.Numerics.Vectors.dll differ diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/netstandard1.0/System.Numerics.Vectors.xml b/packages/System.Numerics.Vectors.4.5.0/ref/netstandard1.0/System.Numerics.Vectors.xml new file mode 100644 index 0000000..da34d39 --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/ref/netstandard1.0/System.Numerics.Vectors.xml @@ -0,0 +1,2621 @@ + + + System.Numerics.Vectors + + + + Represents a 3x2 matrix. + + + Creates a 3x2 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a rotation matrix using the given rotation in radians. + The amount of rotation, in radians. + The rotation matrix. + + + Creates a rotation matrix using the specified rotation in radians and a center point. + The amount of rotation, in radians. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified X and Y components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the specified scale with an offset from the specified center. + The uniform scale to use. + The center offset. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The center point. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the given scale. + The uniform scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale with an offset from the specified center point. + The scale to use. + The center offset. + The scaling matrix. + + + Creates a skew matrix from the specified angles in radians. + The X angle, in radians. + The Y angle, in radians. + The skew matrix. + + + Creates a skew matrix from the specified angles in radians and a center point. + The X angle, in radians. + The Y angle, in radians. + The center point. + The skew matrix. + + + Creates a translation matrix from the specified 2-dimensional vector. + The translation position. + The translation matrix. + + + Creates a translation matrix from the specified X and Y components. + The X position. + The Y position. + The translation matrix. + + + Returns a value that indicates whether this instance and another 3x2 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant for this matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + The multiplicative identify matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Represents a 4x4 matrix. + + + Creates a object from a specified object. + A 3x2 matrix. + + + Creates a 4x4 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the third element in the first row. + The value to assign to the fourth element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the third element in the second row. + The value to assign to the third element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + The value to assign to the third element in the third row. + The value to assign to the fourth element in the third row. + The value to assign to the first element in the fourth row. + The value to assign to the second element in the fourth row. + The value to assign to the third element in the fourth row. + The value to assign to the fourth element in the fourth row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a spherical billboard that rotates around a specified object position. + The position of the object that the billboard will rotate around. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard. + + + Creates a cylindrical billboard that rotates around a specified axis. + The position of the object that the billboard will rotate around. + The position of the camera. + The axis to rotate the billboard around. + The forward vector of the camera. + The forward vector of the object. + The billboard matrix. + + + Creates a matrix that rotates around an arbitrary vector. + The axis to rotate around. + The angle to rotate around axis, in radians. + The rotation matrix. + + + Creates a rotation matrix from the specified Quaternion rotation value. + The source Quaternion. + The rotation matrix. + + + Creates a rotation matrix from the specified yaw, pitch, and roll. + The angle of rotation, in radians, around the Y axis. + The angle of rotation, in radians, around the X axis. + The angle of rotation, in radians, around the Z axis. + The rotation matrix. + + + Creates a view matrix. + The position of the camera. + The target towards which the camera is pointing. + The direction that is &quot;up&quot; from the camera&#39;s point of view. + The view matrix. + + + Creates an orthographic perspective matrix from the given view volume dimensions. + The width of the view volume. + The height of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a customized orthographic projection matrix. + The minimum X-value of the view volume. + The maximum X-value of the view volume. + The minimum Y-value of the view volume. + The maximum Y-value of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a perspective projection matrix from the given view volume dimensions. + The width of the view volume at the near view plane. + The height of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. + The field of view in the y direction, in radians. + The aspect ratio, defined as view space width divided by height. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + fieldOfView is less than or equal to zero. + -or- + fieldOfView is greater than or equal to . + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a customized perspective projection matrix. + The minimum x-value of the view volume at the near view plane. + The maximum x-value of the view volume at the near view plane. + The minimum y-value of the view volume at the near view plane. + The maximum y-value of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a matrix that reflects the coordinate system about a specified plane. + The plane about which to create a reflection. + A new matrix expressing the reflection. + + + Creates a matrix for rotating points around the X axis. + The amount, in radians, by which to rotate around the X axis. + The rotation matrix. + + + Creates a matrix for rotating points around the X axis from a center point. + The amount, in radians, by which to rotate around the X axis. + The center point. + The rotation matrix. + + + The amount, in radians, by which to rotate around the Y axis from a center point. + The amount, in radians, by which to rotate around the Y-axis. + The center point. + The rotation matrix. + + + Creates a matrix for rotating points around the Y axis. + The amount, in radians, by which to rotate around the Y-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis. + The amount, in radians, by which to rotate around the Z-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis from a center point. + The amount, in radians, by which to rotate around the Z-axis. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a uniform scaling matrix that scale equally on each axis. + The uniform scaling factor. + The scaling matrix. + + + Creates a scaling matrix with a center point. + The vector that contains the amount to scale on each axis. + The center point. + The scaling matrix. + + + Creates a uniform scaling matrix that scales equally on each axis with a center point. + The uniform scaling factor. + The center point. + The scaling matrix. + + + Creates a scaling matrix from the specified X, Y, and Z components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The center point. + The scaling matrix. + + + Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. + The direction from which the light that will cast the shadow is coming. + The plane onto which the new matrix should flatten geometry so as to cast a shadow. + A new matrix that can be used to flatten geometry onto the specified plane from the specified direction. + + + Creates a translation matrix from the specified 3-dimensional vector. + The amount to translate in each axis. + The translation matrix. + + + Creates a translation matrix from the specified X, Y, and Z components. + The amount to translate on the X axis. + The amount to translate on the Y axis. + The amount to translate on the Z axis. + The translation matrix. + + + Creates a world matrix with the specified parameters. + The position of the object. + The forward direction of the object. + The upward direction of the object. Its value is usually [0, 1, 0]. + The world matrix. + + + Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. + The source matrix. + When this method returns, contains the scaling component of the transformation matrix if the operation succeeded. + When this method returns, contains the rotation component of the transformation matrix if the operation succeeded. + When the method returns, contains the translation component of the transformation matrix if the operation succeeded. + true if matrix was decomposed successfully; otherwise, false. + + + Returns a value that indicates whether this instance and another 4x4 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant of the current 4x4 matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + Gets the multiplicative identity matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The third element of the first row. + + + + The fourth element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The third element of the second row. + + + + The fourth element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + The third element of the third row. + + + + The fourth element of the third row. + + + + The first element of the fourth row. + + + + The second element of the fourth row. + + + + The third element of the fourth row. + + + + The fourth element of the fourth row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to care + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Transforms the specified matrix by applying the specified Quaternion rotation. + The matrix to transform. + The rotation t apply. + The transformed matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Transposes the rows and columns of a matrix. + The matrix to transpose. + The transposed matrix. + + + Represents a three-dimensional plane. + + + Creates a object from a specified four-dimensional vector. + A vector whose first three elements describe the normal vector, and whose defines the distance along that normal from the origin. + + + Creates a object from a specified normal and the distance along the normal from the origin. + The plane&#39;s normal vector. + The plane&#39;s distance from the origin along its normal vector. + + + Creates a object from the X, Y, and Z components of its normal, and its distance from the origin on that normal. + The X component of the normal. + The Y component of the normal. + The Z component of the normal. + The distance of the plane along its normal from the origin. + + + Creates a object that contains three specified points. + The first point defining the plane. + The second point defining the plane. + The third point defining the plane. + The plane containing the three points. + + + The distance of the plane along its normal from the origin. + + + + Calculates the dot product of a plane and a 4-dimensional vector. + The plane. + The four-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the normal vector of this plane plus the distance () value of the plane. + The plane. + The 3-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the vector of this plane. + The plane. + The three-dimensional vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another plane object are equal. + The other plane. + true if the two planes are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + The normal vector of the plane. + + + + Creates a new object whose normal vector is the source plane&#39;s normal vector normalized. + The source plane. + The normalized plane. + + + Returns a value that indicates whether two planes are equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether two planes are not equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the string representation of this plane object. + A string that represents this object. + + + Transforms a normalized plane by a 4x4 matrix. + The normalized plane to transform. + The transformation matrix to apply to plane. + The transformed plane. + + + Transforms a normalized plane by a Quaternion rotation. + The normalized plane to transform. + The Quaternion rotation to apply to the plane. + A new plane that results from applying the Quaternion rotation. + + + Represents a vector that is used to encode three-dimensional physical rotations. + + + Creates a quaternion from the specified vector and rotation parts. + The vector part of the quaternion. + The rotation part of the quaternion. + + + Constructs a quaternion from the specified components. + The value to assign to the X component of the quaternion. + The value to assign to the Y component of the quaternion. + The value to assign to the Z component of the quaternion. + The value to assign to the W component of the quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Concatenates two quaternions. + The first quaternion rotation in the series. + The second quaternion rotation in the series. + A new quaternion representing the concatenation of the value1 rotation followed by the value2 rotation. + + + Returns the conjugate of a specified quaternion. + The quaternion. + A new quaternion that is the conjugate of value. + + + Creates a quaternion from a vector and an angle to rotate about the vector. + The vector to rotate around. + The angle, in radians, to rotate around the vector. + The newly created quaternion. + + + Creates a quaternion from the specified rotation matrix. + The rotation matrix. + The newly created quaternion. + + + Creates a new quaternion from the given yaw, pitch, and roll. + The yaw angle, in radians, around the Y axis. + The pitch angle, in radians, around the X axis. + The roll angle, in radians, around the Z axis. + The resulting quaternion. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Calculates the dot product of two quaternions. + The first quaternion. + The second quaternion. + The dot product. + + + Returns a value that indicates whether this instance and another quaternion are equal. + The other quaternion. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Gets a quaternion that represents no rotation. + A quaternion whose values are (0, 0, 0, 1). + + + Returns the inverse of a quaternion. + The quaternion. + The inverted quaternion. + + + Gets a value that indicates whether the current instance is the identity quaternion. + true if the current instance is the identity quaternion; otherwise, false. + + + Calculates the length of the quaternion. + The computed length of the quaternion. + + + Calculates the squared length of the quaternion. + The length squared of the quaternion. + + + Performs a linear interpolation between two quaternions based on a value that specifies the weighting of the second quaternion. + The first quaternion. + The second quaternion. + The relative weight of quaternion2 in the interpolation. + The interpolated quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Divides each component of a specified by its length. + The quaternion to normalize. + The normalized quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Returns a value that indicates whether two quaternions are equal. + The first quaternion to compare. + The second quaternion to compare. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether two quaternions are not equal. + The first quaternion to compare. + The second quaternion to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Interpolates between two quaternions, using spherical linear interpolation. + The first quaternion. + The second quaternion. + The relative weight of the second quaternion in the interpolation. + The interpolated quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this quaternion. + The string representation of this quaternion. + + + The rotation component of the quaternion. + + + + The X value of the vector component of the quaternion. + + + + The Y value of the vector component of the quaternion. + + + + The Z value of the vector component of the quaternion. + + + + Represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms. + The vector type. T can be any primitive numeric type. + + + Creates a vector whose components are of a specified type. + The numeric type that defines the type of the components in the vector. + + + Creates a vector from a specified array. + A numeric array. + values is null. + + + Creates a vector from a specified array starting at a specified index position. + A numeric array. + The starting index position from which to create the vector. + values is null. + index is less than zero. + -or- + The length of values minus index is less than . + + + Copies the vector instance to a specified destination array. + The array to receive a copy of the vector values. + destination is null. + The number of elements in the current vector is greater than the number of elements available in the destination array. + + + Copies the vector instance to a specified destination array starting at a specified index position. + The array to receive a copy of the vector values. + The starting index in destination at which to begin the copy operation. + destination is null. + The number of elements in the current instance is greater than the number of elements available from startIndex to the end of the destination array. + index is less than zero or greater than the last index in destination. + + + Returns the number of elements stored in the vector. + The number of elements stored in the vector. + Access to the property getter via reflection is not supported. + + + Returns a value that indicates whether this instance is equal to a specified vector. + The vector to compare with this instance. + true if the current instance and other are equal; otherwise, false. + + + Returns a value that indicates whether this instance is equal to a specified object. + The object to compare with this instance. + true if the current instance and obj are equal; otherwise, false. The method returns false if obj is null, or if obj is a vector of a different type than the current instance. + + + Returns the hash code for this instance. + The hash code. + + + Gets the element at a specified index. + The index of the element to return. + The element at index index. + index is less than zero. + -or- + index is greater than or equal to . + + + Returns a vector containing all ones. + A vector containing all ones. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Returns a new vector by performing a bitwise And operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise And of left and right. + + + Returns a new vector by performing a bitwise Or operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise Or of the elements in left and right. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Returns a value that indicates whether each pair of elements in two specified vectors are equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a new vector by performing a bitwise XOr operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise XOr of the elements in left and right. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Returns a value that indicates whether any single pair of elements in the specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if any element pairs in left and right are equal. false if no element pairs are equal. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar value. + The source vector. + A scalar value. + The scaled vector. + + + Multiplies a vector by the given scalar. + The scalar value. + The source vector. + The scaled vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The one&#39;s complement vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates a given vector. + The vector to negate. + The negated vector. + + + Returns the string representation of this vector using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Returns the string representation of this vector using default formatting. + The string representation of this vector. + + + Returns the string representation of this vector using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns a vector containing all zeroes. + A vector containing all zeroes. + + + Provides a collection of static convenience methods for creating, manipulating, combining, and converting generic vectors. + + + Returns a new vector whose elements are the absolute values of the given vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The absolute value vector. + + + Returns a new vector whose values are the sum of each pair of elements from two given vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The summed vector. + + + Returns a new vector by performing a bitwise And Not operation on each pair of corresponding elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a double-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of signed bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a single-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Returns a new vector by performing a bitwise And operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector by performing a bitwise Or operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Creates a new single-precision vector with elements selected between two specified single-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new double-precision vector with elements selected between two specified double-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new vector of a specified type with elements selected between two specified source vectors of the same type based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The vector type. T can be any primitive numeric type. + The new vector with elements selected based on the mask. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose values are the result of dividing the first vector&#39;s elements by the corresponding elements in the second vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The divided vector. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The dot product. + + + Returns a new integral vector whose elements signal whether the elements in two specified double-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified integral vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in two specified long integer vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified single-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in two specified vectors of the same type are equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether each pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left and right are equal; otherwise, false. + + + Returns a value that indicates whether any single pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element pair in left and right is equal; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are greater than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are greater than their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than their corresponding elements in the second vector of the same time. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the single-precision floating-point second vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than or equal to their corresponding elements in the second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than or equal to their corresponding elements in the second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than or equal to their corresponding elements in the second vector of the same type. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than or equal to all the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than or equal to the corresponding element in right; otherwise, false. + + + Gets a value that indicates whether vector operations are subject to hardware acceleration through JIT intrinsic support. + true if vector operations are subject to hardware acceleration; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision vector are less than their corresponding elements in a second single-precision vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in one vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all of the elements in the first vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than or equal to their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than or equal to their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less or equal to their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are less than or equal to their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than or equal to the corresponding element in right; otherwise, false. + + + Returns a new vector whose elements are the maximum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The maximum vector. + + + Returns a new vector whose elements are the minimum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The minimum vector. + + + Returns a new vector whose values are a scalar value multiplied by each of the values of a specified vector. + The scalar value. + The vector. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + Returns a new vector whose values are the product of each pair of elements in two specified vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The product vector. + + + Returns a new vector whose values are the values of a specified vector each multiplied by a scalar value. + The vector. + The scalar value. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose elements are the negation of the corresponding element in the specified vector. + The source vector. + The vector type. T can be any primitive numeric type. + The negated vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector whose elements are the square roots of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The square root vector. + + + Returns a new vector whose values are the difference between the elements in the second vector and their corresponding elements in the first vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The difference vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector by performing a bitwise exclusive Or (XOr) operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Represents a vector with two single-precision floating-point values. + + + Creates a new object whose two elements have the same value. + The value to assign to both elements. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of the vector. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 2 elements are equal to one. + A vector whose two elements are equal to one (that is, it returns the vector (1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 3x2 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 3x2 matrix. + The source vector. + The matrix. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0). + The vector (1,0). + + + Gets the vector (0,1). + The vector (0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + Returns a vector whose 2 elements are equal to zero. + A vector whose two elements are equal to zero (that is, it returns the vector (0,0). + + + Represents a vector with three single-precision floating-point values. + + + Creates a new object whose three elements have the same value. + The value to assign to all three elements. + + + Creates a new object from the specified object and the specified value. + The vector with two elements. + The additional value to assign to the field. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the cross product of two vectors. + The first vector. + The second vector. + The cross product. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 3 elements are equal to one. + A vector whose three elements are equal to one (that is, it returns the vector (1,1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0,0). + The vector (1,0,0). + + + Gets the vector (0,1,0). + The vector (0,1,0).. + + + Gets the vector (0,0,1). + The vector (0,0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 3 elements are equal to zero. + A vector whose three elements are equal to zero (that is, it returns the vector (0,0,0). + + + Represents a vector with four single-precision floating-point values. + + + Creates a new object whose four elements have the same value. + The value to assign to all four elements. + + + Constructs a new object from the specified object and a W component. + The vector to use for the X, Y, and Z components. + The W component. + + + Creates a new object from the specified object and a Z and a W component. + The vector to use for the X and Y components. + The Z component. + The W component. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 4 elements are equal to one. + Returns . + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a four-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a four-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a three-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a two-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a two-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a three-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Gets the vector (0,0,0,1). + The vector (0,0,0,1). + + + Gets the vector (1,0,0,0). + The vector (1,0,0,0). + + + Gets the vector (0,1,0,0). + The vector (0,1,0,0).. + + + Gets a vector whose 4 elements are equal to zero. + The vector (0,0,1,0). + + + The W component of the vector. + + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 4 elements are equal to zero. + A vector whose four elements are equal to zero (that is, it returns the vector (0,0,0,0). + + + \ No newline at end of file diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/netstandard2.0/System.Numerics.Vectors.dll b/packages/System.Numerics.Vectors.4.5.0/ref/netstandard2.0/System.Numerics.Vectors.dll new file mode 100644 index 0000000..ba0aa0c Binary files /dev/null and b/packages/System.Numerics.Vectors.4.5.0/ref/netstandard2.0/System.Numerics.Vectors.dll differ diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/netstandard2.0/System.Numerics.Vectors.xml b/packages/System.Numerics.Vectors.4.5.0/ref/netstandard2.0/System.Numerics.Vectors.xml new file mode 100644 index 0000000..da34d39 --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/ref/netstandard2.0/System.Numerics.Vectors.xml @@ -0,0 +1,2621 @@ + + + System.Numerics.Vectors + + + + Represents a 3x2 matrix. + + + Creates a 3x2 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a rotation matrix using the given rotation in radians. + The amount of rotation, in radians. + The rotation matrix. + + + Creates a rotation matrix using the specified rotation in radians and a center point. + The amount of rotation, in radians. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified X and Y components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the specified scale with an offset from the specified center. + The uniform scale to use. + The center offset. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The center point. + The scaling matrix. + + + Creates a scaling matrix that scales uniformly with the given scale. + The uniform scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a scaling matrix from the specified vector scale with an offset from the specified center point. + The scale to use. + The center offset. + The scaling matrix. + + + Creates a skew matrix from the specified angles in radians. + The X angle, in radians. + The Y angle, in radians. + The skew matrix. + + + Creates a skew matrix from the specified angles in radians and a center point. + The X angle, in radians. + The Y angle, in radians. + The center point. + The skew matrix. + + + Creates a translation matrix from the specified 2-dimensional vector. + The translation position. + The translation matrix. + + + Creates a translation matrix from the specified X and Y components. + The X position. + The Y position. + The translation matrix. + + + Returns a value that indicates whether this instance and another 3x2 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant for this matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + The multiplicative identify matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Represents a 4x4 matrix. + + + Creates a object from a specified object. + A 3x2 matrix. + + + Creates a 4x4 matrix from the specified components. + The value to assign to the first element in the first row. + The value to assign to the second element in the first row. + The value to assign to the third element in the first row. + The value to assign to the fourth element in the first row. + The value to assign to the first element in the second row. + The value to assign to the second element in the second row. + The value to assign to the third element in the second row. + The value to assign to the third element in the second row. + The value to assign to the first element in the third row. + The value to assign to the second element in the third row. + The value to assign to the third element in the third row. + The value to assign to the fourth element in the third row. + The value to assign to the first element in the fourth row. + The value to assign to the second element in the fourth row. + The value to assign to the third element in the fourth row. + The value to assign to the fourth element in the fourth row. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values of value1 and value2. + + + Creates a spherical billboard that rotates around a specified object position. + The position of the object that the billboard will rotate around. + The position of the camera. + The up vector of the camera. + The forward vector of the camera. + The created billboard. + + + Creates a cylindrical billboard that rotates around a specified axis. + The position of the object that the billboard will rotate around. + The position of the camera. + The axis to rotate the billboard around. + The forward vector of the camera. + The forward vector of the object. + The billboard matrix. + + + Creates a matrix that rotates around an arbitrary vector. + The axis to rotate around. + The angle to rotate around axis, in radians. + The rotation matrix. + + + Creates a rotation matrix from the specified Quaternion rotation value. + The source Quaternion. + The rotation matrix. + + + Creates a rotation matrix from the specified yaw, pitch, and roll. + The angle of rotation, in radians, around the Y axis. + The angle of rotation, in radians, around the X axis. + The angle of rotation, in radians, around the Z axis. + The rotation matrix. + + + Creates a view matrix. + The position of the camera. + The target towards which the camera is pointing. + The direction that is &quot;up&quot; from the camera&#39;s point of view. + The view matrix. + + + Creates an orthographic perspective matrix from the given view volume dimensions. + The width of the view volume. + The height of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a customized orthographic projection matrix. + The minimum X-value of the view volume. + The maximum X-value of the view volume. + The minimum Y-value of the view volume. + The maximum Y-value of the view volume. + The minimum Z-value of the view volume. + The maximum Z-value of the view volume. + The orthographic projection matrix. + + + Creates a perspective projection matrix from the given view volume dimensions. + The width of the view volume at the near view plane. + The height of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a perspective projection matrix based on a field of view, aspect ratio, and near and far view plane distances. + The field of view in the y direction, in radians. + The aspect ratio, defined as view space width divided by height. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + fieldOfView is less than or equal to zero. + -or- + fieldOfView is greater than or equal to . + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a customized perspective projection matrix. + The minimum x-value of the view volume at the near view plane. + The maximum x-value of the view volume at the near view plane. + The minimum y-value of the view volume at the near view plane. + The maximum y-value of the view volume at the near view plane. + The distance to the near view plane. + The distance to the far view plane. + The perspective projection matrix. + nearPlaneDistance is less than or equal to zero. + -or- + farPlaneDistance is less than or equal to zero. + -or- + nearPlaneDistance is greater than or equal to farPlaneDistance. + + + Creates a matrix that reflects the coordinate system about a specified plane. + The plane about which to create a reflection. + A new matrix expressing the reflection. + + + Creates a matrix for rotating points around the X axis. + The amount, in radians, by which to rotate around the X axis. + The rotation matrix. + + + Creates a matrix for rotating points around the X axis from a center point. + The amount, in radians, by which to rotate around the X axis. + The center point. + The rotation matrix. + + + The amount, in radians, by which to rotate around the Y axis from a center point. + The amount, in radians, by which to rotate around the Y-axis. + The center point. + The rotation matrix. + + + Creates a matrix for rotating points around the Y axis. + The amount, in radians, by which to rotate around the Y-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis. + The amount, in radians, by which to rotate around the Z-axis. + The rotation matrix. + + + Creates a matrix for rotating points around the Z axis from a center point. + The amount, in radians, by which to rotate around the Z-axis. + The center point. + The rotation matrix. + + + Creates a scaling matrix from the specified vector scale. + The scale to use. + The scaling matrix. + + + Creates a uniform scaling matrix that scale equally on each axis. + The uniform scaling factor. + The scaling matrix. + + + Creates a scaling matrix with a center point. + The vector that contains the amount to scale on each axis. + The center point. + The scaling matrix. + + + Creates a uniform scaling matrix that scales equally on each axis with a center point. + The uniform scaling factor. + The center point. + The scaling matrix. + + + Creates a scaling matrix from the specified X, Y, and Z components. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The scaling matrix. + + + Creates a scaling matrix that is offset by a given center point. + The value to scale by on the X axis. + The value to scale by on the Y axis. + The value to scale by on the Z axis. + The center point. + The scaling matrix. + + + Creates a matrix that flattens geometry into a specified plane as if casting a shadow from a specified light source. + The direction from which the light that will cast the shadow is coming. + The plane onto which the new matrix should flatten geometry so as to cast a shadow. + A new matrix that can be used to flatten geometry onto the specified plane from the specified direction. + + + Creates a translation matrix from the specified 3-dimensional vector. + The amount to translate in each axis. + The translation matrix. + + + Creates a translation matrix from the specified X, Y, and Z components. + The amount to translate on the X axis. + The amount to translate on the Y axis. + The amount to translate on the Z axis. + The translation matrix. + + + Creates a world matrix with the specified parameters. + The position of the object. + The forward direction of the object. + The upward direction of the object. Its value is usually [0, 1, 0]. + The world matrix. + + + Attempts to extract the scale, translation, and rotation components from the given scale, rotation, or translation matrix. The return value indicates whether the operation succeeded. + The source matrix. + When this method returns, contains the scaling component of the transformation matrix if the operation succeeded. + When this method returns, contains the rotation component of the transformation matrix if the operation succeeded. + When the method returns, contains the translation component of the transformation matrix if the operation succeeded. + true if matrix was decomposed successfully; otherwise, false. + + + Returns a value that indicates whether this instance and another 4x4 matrix are equal. + The other matrix. + true if the two matrices are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Calculates the determinant of the current 4x4 matrix. + The determinant. + + + Returns the hash code for this instance. + The hash code. + + + Gets the multiplicative identity matrix. + Gets the multiplicative identity matrix. + + + Inverts the specified matrix. The return value indicates whether the operation succeeded. + The matrix to invert. + When this method returns, contains the inverted matrix if the operation succeeded. + true if matrix was converted successfully; otherwise, false. + + + Indicates whether the current matrix is the identity matrix. + true if the current matrix is the identity matrix; otherwise, false. + + + Performs a linear interpolation from one matrix to a second matrix based on a value that specifies the weighting of the second matrix. + The first matrix. + The second matrix. + The relative weighting of matrix2. + The interpolated matrix. + + + The first element of the first row. + + + + The second element of the first row. + + + + The third element of the first row. + + + + The fourth element of the first row. + + + + The first element of the second row. + + + + The second element of the second row. + + + + The third element of the second row. + + + + The fourth element of the second row. + + + + The first element of the third row. + + + + The second element of the third row. + + + + The third element of the third row. + + + + The fourth element of the third row. + + + + The first element of the fourth row. + + + + The second element of the fourth row. + + + + The third element of the fourth row. + + + + The fourth element of the fourth row. + + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Adds each element in one matrix with its corresponding element in a second matrix. + The first matrix. + The second matrix. + The matrix that contains the summed values. + + + Returns a value that indicates whether the specified matrices are equal. + The first matrix to compare. + The second matrix to care + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether the specified matrices are not equal. + The first matrix to compare. + The second matrix to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the matrix that results from scaling all the elements of a specified matrix by a scalar factor. + The matrix to scale. + The scaling value to use. + The scaled matrix. + + + Returns the matrix that results from multiplying two matrices together. + The first matrix. + The second matrix. + The product matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Negates the specified matrix by multiplying all its values by -1. + The matrix to negate. + The negated matrix. + + + Subtracts each element in a second matrix from its corresponding element in a first matrix. + The first matrix. + The second matrix. + The matrix containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this matrix. + The string representation of this matrix. + + + Transforms the specified matrix by applying the specified Quaternion rotation. + The matrix to transform. + The rotation t apply. + The transformed matrix. + + + Gets or sets the translation component of this matrix. + The translation component of the current instance. + + + Transposes the rows and columns of a matrix. + The matrix to transpose. + The transposed matrix. + + + Represents a three-dimensional plane. + + + Creates a object from a specified four-dimensional vector. + A vector whose first three elements describe the normal vector, and whose defines the distance along that normal from the origin. + + + Creates a object from a specified normal and the distance along the normal from the origin. + The plane&#39;s normal vector. + The plane&#39;s distance from the origin along its normal vector. + + + Creates a object from the X, Y, and Z components of its normal, and its distance from the origin on that normal. + The X component of the normal. + The Y component of the normal. + The Z component of the normal. + The distance of the plane along its normal from the origin. + + + Creates a object that contains three specified points. + The first point defining the plane. + The second point defining the plane. + The third point defining the plane. + The plane containing the three points. + + + The distance of the plane along its normal from the origin. + + + + Calculates the dot product of a plane and a 4-dimensional vector. + The plane. + The four-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the normal vector of this plane plus the distance () value of the plane. + The plane. + The 3-dimensional vector. + The dot product. + + + Returns the dot product of a specified three-dimensional vector and the vector of this plane. + The plane. + The three-dimensional vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another plane object are equal. + The other plane. + true if the two planes are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + The normal vector of the plane. + + + + Creates a new object whose normal vector is the source plane&#39;s normal vector normalized. + The source plane. + The normalized plane. + + + Returns a value that indicates whether two planes are equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are equal; otherwise, false. + + + Returns a value that indicates whether two planes are not equal. + The first plane to compare. + The second plane to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the string representation of this plane object. + A string that represents this object. + + + Transforms a normalized plane by a 4x4 matrix. + The normalized plane to transform. + The transformation matrix to apply to plane. + The transformed plane. + + + Transforms a normalized plane by a Quaternion rotation. + The normalized plane to transform. + The Quaternion rotation to apply to the plane. + A new plane that results from applying the Quaternion rotation. + + + Represents a vector that is used to encode three-dimensional physical rotations. + + + Creates a quaternion from the specified vector and rotation parts. + The vector part of the quaternion. + The rotation part of the quaternion. + + + Constructs a quaternion from the specified components. + The value to assign to the X component of the quaternion. + The value to assign to the Y component of the quaternion. + The value to assign to the Z component of the quaternion. + The value to assign to the W component of the quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Concatenates two quaternions. + The first quaternion rotation in the series. + The second quaternion rotation in the series. + A new quaternion representing the concatenation of the value1 rotation followed by the value2 rotation. + + + Returns the conjugate of a specified quaternion. + The quaternion. + A new quaternion that is the conjugate of value. + + + Creates a quaternion from a vector and an angle to rotate about the vector. + The vector to rotate around. + The angle, in radians, to rotate around the vector. + The newly created quaternion. + + + Creates a quaternion from the specified rotation matrix. + The rotation matrix. + The newly created quaternion. + + + Creates a new quaternion from the given yaw, pitch, and roll. + The yaw angle, in radians, around the Y axis. + The pitch angle, in radians, around the X axis. + The roll angle, in radians, around the Z axis. + The resulting quaternion. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Calculates the dot product of two quaternions. + The first quaternion. + The second quaternion. + The dot product. + + + Returns a value that indicates whether this instance and another quaternion are equal. + The other quaternion. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Gets a quaternion that represents no rotation. + A quaternion whose values are (0, 0, 0, 1). + + + Returns the inverse of a quaternion. + The quaternion. + The inverted quaternion. + + + Gets a value that indicates whether the current instance is the identity quaternion. + true if the current instance is the identity quaternion; otherwise, false. + + + Calculates the length of the quaternion. + The computed length of the quaternion. + + + Calculates the squared length of the quaternion. + The length squared of the quaternion. + + + Performs a linear interpolation between two quaternions based on a value that specifies the weighting of the second quaternion. + The first quaternion. + The second quaternion. + The relative weight of quaternion2 in the interpolation. + The interpolated quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Divides each component of a specified by its length. + The quaternion to normalize. + The normalized quaternion. + + + Adds each element in one quaternion with its corresponding element in a second quaternion. + The first quaternion. + The second quaternion. + The quaternion that contains the summed values of value1 and value2. + + + Divides one quaternion by a second quaternion. + The dividend. + The divisor. + The quaternion that results from dividing value1 by value2. + + + Returns a value that indicates whether two quaternions are equal. + The first quaternion to compare. + The second quaternion to compare. + true if the two quaternions are equal; otherwise, false. + + + Returns a value that indicates whether two quaternions are not equal. + The first quaternion to compare. + The second quaternion to compare. + true if value1 and value2 are not equal; otherwise, false. + + + Returns the quaternion that results from scaling all the components of a specified quaternion by a scalar factor. + The source quaternion. + The scalar value. + The scaled quaternion. + + + Returns the quaternion that results from multiplying two quaternions together. + The first quaternion. + The second quaternion. + The product quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Reverses the sign of each component of the quaternion. + The quaternion to negate. + The negated quaternion. + + + Interpolates between two quaternions, using spherical linear interpolation. + The first quaternion. + The second quaternion. + The relative weight of the second quaternion in the interpolation. + The interpolated quaternion. + + + Subtracts each element in a second quaternion from its corresponding element in a first quaternion. + The first quaternion. + The second quaternion. + The quaternion containing the values that result from subtracting each element in value2 from its corresponding element in value1. + + + Returns a string that represents this quaternion. + The string representation of this quaternion. + + + The rotation component of the quaternion. + + + + The X value of the vector component of the quaternion. + + + + The Y value of the vector component of the quaternion. + + + + The Z value of the vector component of the quaternion. + + + + Represents a single vector of a specified numeric type that is suitable for low-level optimization of parallel algorithms. + The vector type. T can be any primitive numeric type. + + + Creates a vector whose components are of a specified type. + The numeric type that defines the type of the components in the vector. + + + Creates a vector from a specified array. + A numeric array. + values is null. + + + Creates a vector from a specified array starting at a specified index position. + A numeric array. + The starting index position from which to create the vector. + values is null. + index is less than zero. + -or- + The length of values minus index is less than . + + + Copies the vector instance to a specified destination array. + The array to receive a copy of the vector values. + destination is null. + The number of elements in the current vector is greater than the number of elements available in the destination array. + + + Copies the vector instance to a specified destination array starting at a specified index position. + The array to receive a copy of the vector values. + The starting index in destination at which to begin the copy operation. + destination is null. + The number of elements in the current instance is greater than the number of elements available from startIndex to the end of the destination array. + index is less than zero or greater than the last index in destination. + + + Returns the number of elements stored in the vector. + The number of elements stored in the vector. + Access to the property getter via reflection is not supported. + + + Returns a value that indicates whether this instance is equal to a specified vector. + The vector to compare with this instance. + true if the current instance and other are equal; otherwise, false. + + + Returns a value that indicates whether this instance is equal to a specified object. + The object to compare with this instance. + true if the current instance and obj are equal; otherwise, false. The method returns false if obj is null, or if obj is a vector of a different type than the current instance. + + + Returns the hash code for this instance. + The hash code. + + + Gets the element at a specified index. + The index of the element to return. + The element at index index. + index is less than zero. + -or- + index is greater than or equal to . + + + Returns a vector containing all ones. + A vector containing all ones. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Returns a new vector by performing a bitwise And operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise And of left and right. + + + Returns a new vector by performing a bitwise Or operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise Or of the elements in left and right. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Returns a value that indicates whether each pair of elements in two specified vectors are equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a new vector by performing a bitwise XOr operation on each of the elements in two vectors. + The first vector. + The second vector. + The vector that results from the bitwise XOr of the elements in left and right. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Reinterprets the bits of the specified vector into a vector of type . + The vector to reinterpret. + The reinterpreted vector. + + + Returns a value that indicates whether any single pair of elements in the specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if any element pairs in left and right are equal. false if no element pairs are equal. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar value. + The source vector. + A scalar value. + The scaled vector. + + + Multiplies a vector by the given scalar. + The scalar value. + The source vector. + The scaled vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The one&#39;s complement vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates a given vector. + The vector to negate. + The negated vector. + + + Returns the string representation of this vector using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Returns the string representation of this vector using default formatting. + The string representation of this vector. + + + Returns the string representation of this vector using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns a vector containing all zeroes. + A vector containing all zeroes. + + + Provides a collection of static convenience methods for creating, manipulating, combining, and converting generic vectors. + + + Returns a new vector whose elements are the absolute values of the given vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The absolute value vector. + + + Returns a new vector whose values are the sum of each pair of elements from two given vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The summed vector. + + + Returns a new vector by performing a bitwise And Not operation on each pair of corresponding elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a double-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of signed bytes. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a single-precision floating-point vector. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned 16-bit integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Reinterprets the bits of a specified vector into those of a vector of unsigned long integers. + The source vector. + The vector type. T can be any primitive numeric type. + The reinterpreted vector. + + + Returns a new vector by performing a bitwise And operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector by performing a bitwise Or operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Creates a new single-precision vector with elements selected between two specified single-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new double-precision vector with elements selected between two specified double-precision source vectors based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The new vector with elements selected based on the mask. + + + Creates a new vector of a specified type with elements selected between two specified source vectors of the same type based on an integral mask vector. + The integral mask vector used to drive selection. + The first source vector. + The second source vector. + The vector type. T can be any primitive numeric type. + The new vector with elements selected based on the mask. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose values are the result of dividing the first vector&#39;s elements by the corresponding elements in the second vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The divided vector. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The dot product. + + + Returns a new integral vector whose elements signal whether the elements in two specified double-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified integral vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in two specified long integer vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in two specified single-precision vectors are equal. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in two specified vectors of the same type are equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether each pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left and right are equal; otherwise, false. + + + Returns a value that indicates whether any single pair of elements in the given vectors is equal. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element pair in left and right is equal; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are greater than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are greater than their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than their corresponding elements in the second vector of the same time. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the single-precision floating-point second vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are greater than or equal to their corresponding elements in the second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are greater than or equal to their corresponding elements in the second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one vector are greater than or equal to their corresponding elements in the second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector of a specified type are greater than or equal to their corresponding elements in the second vector of the same type. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are greater than or equal to all the corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all elements in left are greater than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is greater than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is greater than or equal to the corresponding element in right; otherwise, false. + + + Gets a value that indicates whether vector operations are subject to hardware acceleration through JIT intrinsic support. + true if vector operations are subject to hardware acceleration; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less than their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision vector are less than their corresponding elements in a second single-precision vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector of a specified type whose elements signal whether the elements in one vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all of the elements in the first vector are less than their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than the corresponding element in right; otherwise, false. + + + Returns a new integral vector whose elements signal whether the elements in one double-precision floating-point vector are less than or equal to their corresponding elements in a second double-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new integral vector whose elements signal whether the elements in one integral vector are less than or equal to their corresponding elements in a second integral vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new long integer vector whose elements signal whether the elements in one long integer vector are less or equal to their corresponding elements in a second long integer vector. + The first vector to compare. + The second vector to compare. + The resulting long integer vector. + + + Returns a new integral vector whose elements signal whether the elements in one single-precision floating-point vector are less than or equal to their corresponding elements in a second single-precision floating-point vector. + The first vector to compare. + The second vector to compare. + The resulting integral vector. + + + Returns a new vector whose elements signal whether the elements in one vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a value that indicates whether all elements in the first vector are less than or equal to their corresponding elements in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if all of the elements in left are less than or equal to the corresponding elements in right; otherwise, false. + + + Returns a value that indicates whether any element in the first vector is less than or equal to the corresponding element in the second vector. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + true if any element in left is less than or equal to the corresponding element in right; otherwise, false. + + + Returns a new vector whose elements are the maximum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The maximum vector. + + + Returns a new vector whose elements are the minimum of each pair of elements in the two given vectors. + The first vector to compare. + The second vector to compare. + The vector type. T can be any primitive numeric type. + The minimum vector. + + + Returns a new vector whose values are a scalar value multiplied by each of the values of a specified vector. + The scalar value. + The vector. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + Returns a new vector whose values are the product of each pair of elements in two specified vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The product vector. + + + Returns a new vector whose values are the values of a specified vector each multiplied by a scalar value. + The vector. + The scalar value. + The vector type. T can be any primitive numeric type. + The scaled vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector whose elements are the negation of the corresponding element in the specified vector. + The source vector. + The vector type. T can be any primitive numeric type. + The negated vector. + + + Returns a new vector whose elements are obtained by taking the one&#39;s complement of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Returns a new vector whose elements are the square roots of a specified vector&#39;s elements. + The source vector. + The vector type. T can be any primitive numeric type. + The square root vector. + + + Returns a new vector whose values are the difference between the elements in the second vector and their corresponding elements in the first vector. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The difference vector. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns a new vector by performing a bitwise exclusive Or (XOr) operation on each pair of elements in two vectors. + The first vector. + The second vector. + The vector type. T can be any primitive numeric type. + The resulting vector. + + + Represents a vector with two single-precision floating-point values. + + + Creates a new object whose two elements have the same value. + The value to assign to both elements. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of the vector. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 2 elements are equal to one. + A vector whose two elements are equal to one (that is, it returns the vector (1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 3x2 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 3x2 matrix. + The source vector. + The matrix. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0). + The vector (1,0). + + + Gets the vector (0,1). + The vector (0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + Returns a vector whose 2 elements are equal to zero. + A vector whose two elements are equal to zero (that is, it returns the vector (0,0). + + + Represents a vector with three single-precision floating-point values. + + + Creates a new object whose three elements have the same value. + The value to assign to all three elements. + + + Creates a new object from the specified object and the specified value. + The vector with two elements. + The additional value to assign to the field. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the cross product of two vectors. + The first vector. + The second vector. + The cross product. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 3 elements are equal to one. + A vector whose three elements are equal to one (that is, it returns the vector (1,1,1). + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns the reflection of a vector off a surface that has the specified normal. + The source vector. + The normal of the surface being reflected off. + The reflected vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a vector normal by the given 4x4 matrix. + The source vector. + The matrix. + The transformed vector. + + + Gets the vector (1,0,0). + The vector (1,0,0). + + + Gets the vector (0,1,0). + The vector (0,1,0).. + + + Gets the vector (0,0,1). + The vector (0,0,1). + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 3 elements are equal to zero. + A vector whose three elements are equal to zero (that is, it returns the vector (0,0,0). + + + Represents a vector with four single-precision floating-point values. + + + Creates a new object whose four elements have the same value. + The value to assign to all four elements. + + + Constructs a new object from the specified object and a W component. + The vector to use for the X, Y, and Z components. + The W component. + + + Creates a new object from the specified object and a Z and a W component. + The vector to use for the X and Y components. + The Z component. + The W component. + + + Creates a vector whose elements have the specified values. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + The value to assign to the field. + + + Returns a vector whose elements are the absolute values of each of the specified vector&#39;s elements. + A vector. + The absolute value vector. + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Restricts a vector between a minimum and a maximum value. + The vector to restrict. + The minimum value. + The maximum value. + The restricted vector. + + + Copies the elements of the vector to a specified array. + The destination array. + array is null. + The number of elements in the current instance is greater than in the array. + array is multidimensional. + + + Copies the elements of the vector to a specified array starting at a specified index position. + The destination array. + The index at which to copy the first element of the vector. + array is null. + The number of elements in the current instance is greater than in the array. + index is less than zero. + -or- + index is greater than or equal to the array length. + array is multidimensional. + + + Computes the Euclidean distance between the two given points. + The first point. + The second point. + The distance. + + + Returns the Euclidean distance squared between two specified points. + The first point. + The second point. + The distance squared. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector resulting from the division. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The vector that results from the division. + + + Returns the dot product of two vectors. + The first vector. + The second vector. + The dot product. + + + Returns a value that indicates whether this instance and another vector are equal. + The other vector. + true if the two vectors are equal; otherwise, false. + + + Returns a value that indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + true if the current instance and obj are equal; otherwise, false. If obj is null, the method returns false. + + + Returns the hash code for this instance. + The hash code. + + + Returns the length of this vector object. + The vector&#39;s length. + + + Returns the length of the vector squared. + The vector&#39;s length squared. + + + Performs a linear interpolation between two vectors based on the given weighting. + The first vector. + The second vector. + A value between 0 and 1 that indicates the weight of value2. + The interpolated vector. + + + Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The maximized vector. + + + Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors. + The first vector. + The second vector. + The minimized vector. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiplies a vector by a specified scalar. + The vector to multiply. + The scalar value. + The scaled vector. + + + Multiplies a scalar value by a specified vector. + The scaled value. + The vector. + The scaled vector. + + + Negates a specified vector. + The vector to negate. + The negated vector. + + + Returns a vector with the same direction as the specified vector, but with a length of one. + The vector to normalize. + The normalized vector. + + + Gets a vector whose 4 elements are equal to one. + Returns . + + + Adds two vectors together. + The first vector to add. + The second vector to add. + The summed vector. + + + Divides the first vector by the second. + The first vector. + The second vector. + The vector that results from dividing left by right. + + + Divides the specified vector by a specified scalar value. + The vector. + The scalar value. + The result of the division. + + + Returns a value that indicates whether each pair of elements in two specified vectors is equal. + The first vector to compare. + The second vector to compare. + true if left and right are equal; otherwise, false. + + + Returns a value that indicates whether two specified vectors are not equal. + The first vector to compare. + The second vector to compare. + true if left and right are not equal; otherwise, false. + + + Multiplies two vectors together. + The first vector. + The second vector. + The product vector. + + + Multiples the specified vector by the specified scalar value. + The vector. + The scalar value. + The scaled vector. + + + Multiples the scalar value by the specified vector. + The vector. + The scalar value. + The scaled vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The vector that results from subtracting right from left. + + + Negates the specified vector. + The vector to negate. + The negated vector. + + + Returns a vector whose elements are the square root of each of a specified vector&#39;s elements. + A vector. + The square root vector. + + + Subtracts the second vector from the first. + The first vector. + The second vector. + The difference vector. + + + Returns the string representation of the current instance using default formatting. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements. + A or that defines the format of individual elements. + The string representation of the current instance. + + + Returns the string representation of the current instance using the specified format string to format individual elements and the specified format provider to define culture-specific formatting. + A or that defines the format of individual elements. + A format provider that supplies culture-specific formatting information. + The string representation of the current instance. + + + Transforms a four-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a four-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a three-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a two-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Transforms a two-dimensional vector by the specified Quaternion rotation value. + The vector to rotate. + The rotation to apply. + The transformed vector. + + + Transforms a three-dimensional vector by a specified 4x4 matrix. + The vector to transform. + The transformation matrix. + The transformed vector. + + + Gets the vector (0,0,0,1). + The vector (0,0,0,1). + + + Gets the vector (1,0,0,0). + The vector (1,0,0,0). + + + Gets the vector (0,1,0,0). + The vector (0,1,0,0).. + + + Gets a vector whose 4 elements are equal to zero. + The vector (0,0,1,0). + + + The W component of the vector. + + + + The X component of the vector. + + + + The Y component of the vector. + + + + The Z component of the vector. + + + + Gets a vector whose 4 elements are equal to zero. + A vector whose four elements are equal to zero (that is, it returns the vector (0,0,0,0). + + + \ No newline at end of file diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/uap10.0.16299/_._ b/packages/System.Numerics.Vectors.4.5.0/ref/uap10.0.16299/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/xamarinios10/_._ b/packages/System.Numerics.Vectors.4.5.0/ref/xamarinios10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/xamarinmac20/_._ b/packages/System.Numerics.Vectors.4.5.0/ref/xamarinmac20/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/xamarintvos10/_._ b/packages/System.Numerics.Vectors.4.5.0/ref/xamarintvos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/ref/xamarinwatchos10/_._ b/packages/System.Numerics.Vectors.4.5.0/ref/xamarinwatchos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/useSharedDesignerContext.txt b/packages/System.Numerics.Vectors.4.5.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Numerics.Vectors.4.5.0/version.txt b/packages/System.Numerics.Vectors.4.5.0/version.txt new file mode 100644 index 0000000..47004a0 --- /dev/null +++ b/packages/System.Numerics.Vectors.4.5.0/version.txt @@ -0,0 +1 @@ +30ab651fcb4354552bd4891619a0bdd81e0ebdbf diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/.signature.p7s b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/.signature.p7s new file mode 100644 index 0000000..2a015f9 Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/.signature.p7s differ diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/Icon.png b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/Icon.png new file mode 100644 index 0000000..a0f1fdb Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/Icon.png differ diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/LICENSE.TXT b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/System.Runtime.CompilerServices.Unsafe.6.0.0.nupkg b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/System.Runtime.CompilerServices.Unsafe.6.0.0.nupkg new file mode 100644 index 0000000..3052c31 Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/System.Runtime.CompilerServices.Unsafe.6.0.0.nupkg differ diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/THIRD-PARTY-NOTICES.TXT b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..89c59b2 --- /dev/null +++ b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,939 @@ +.NET Runtime uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Runtime software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +https://www.unicode.org/license.html + +Copyright © 1991-2020 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +http://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR +COPYRIGHT HOLDERS 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. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for RFC 3492 +--------------------------- + +The punycode implementation is based on the sample code in RFC 3492 + +Copyright (C) The Internet Society (2003). All Rights Reserved. + +This document and translations of it may be copied and furnished to +others, and derivative works that comment on or otherwise explain it +or assist in its implementation may be prepared, copied, published +and distributed, in whole or in part, without restriction of any +kind, provided that the above copyright notice and this paragraph are +included on all such copies and derivative works. However, this +document itself may not be modified in any way, such as by removing +the copyright notice or references to the Internet Society or other +Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for +copyrights defined in the Internet Standards process must be +followed, or as required to translate it into languages other than +English. + +The limited permissions granted above are perpetual and will not be +revoked by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an +"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +License notice for Algorithm from Internet Draft document "UUIDs and GUIDs" +--------------------------------------------------------------------------- + +Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. +Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & +Digital Equipment Corporation, Maynard, Mass. +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: permission to use, copy, +modify, and distribute this file for any purpose is hereby +granted without fee, provided that the above copyright notices and +this notice appears in all source code copies, and that none of +the names of Open Software Foundation, Inc., Hewlett-Packard +Company, or Digital Equipment Corporation be used in advertising +or publicity pertaining to distribution of the software without +specific, written prior permission. Neither Open Software +Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital Equipment +Corporation makes any representations about the suitability of +this software for any purpose. + +Copyright(C) The Internet Society 1997. All Rights Reserved. + +This document and translations of it may be copied and furnished to others, +and derivative works that comment on or otherwise explain it or assist in +its implementation may be prepared, copied, published and distributed, in +whole or in part, without restriction of any kind, provided that the above +copyright notice and this paragraph are included on all such copies and +derivative works.However, this document itself may not be modified in any +way, such as by removing the copyright notice or references to the Internet +Society or other Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for copyrights +defined in the Internet Standards process must be followed, or as required +to translate it into languages other than English. + +The limited permissions granted above are perpetual and will not be revoked +by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an "AS IS" +basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE +DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO +ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY +RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A +PARTICULAR PURPOSE. + +License notice for Algorithm from RFC 4122 - +A Universally Unique IDentifier (UUID) URN Namespace +---------------------------------------------------- + +Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. +Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & +Digital Equipment Corporation, Maynard, Mass. +Copyright (c) 1998 Microsoft. +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: permission to use, copy, +modify, and distribute this file for any purpose is hereby +granted without fee, provided that the above copyright notices and +this notice appears in all source code copies, and that none of +the names of Open Software Foundation, Inc., Hewlett-Packard +Company, Microsoft, or Digital Equipment Corporation be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Neither Open Software +Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital +Equipment Corporation makes any representations about the +suitability of this software for any purpose." + +License notice for The LLVM Compiler Infrastructure +--------------------------------------------------- + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +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 +CONTRIBUTORS OR COPYRIGHT HOLDERS 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 WITH THE +SOFTWARE. + +License notice for Bob Jenkins +------------------------------ + +By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this +code any way you wish, private, educational, or commercial. It's free. + +License notice for Greg Parker +------------------------------ + +Greg Parker gparker@cs.stanford.edu December 2000 +This code is in the public domain and may be copied or modified without +permission. + +License notice for libunwind based code +---------------------------------------- + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for Printing Floating-Point Numbers (Dragon4) +------------------------------------------------------------ + +/****************************************************************************** + Copyright (c) 2014 Ryan Juckett + http://www.ryanjuckett.com/ + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source + distribution. +******************************************************************************/ + +License notice for Printing Floating-point Numbers (Grisu3) +----------------------------------------------------------- + +Copyright 2012 the V8 project authors. All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xxHash +------------------------- + +xxHash Library +Copyright (c) 2012-2014, Yann Collet +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Berkeley SoftFloat Release 3e +------------------------------------------------ + +https://github.com/ucb-bar/berkeley-softfloat-3 +https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt + +License for Berkeley SoftFloat Release 3e + +John R. Hauser +2018 January 20 + +The following applies to the whole of SoftFloat Release 3e as well as to +each source file individually. + +Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the +University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions, and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE +DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xoshiro RNGs +-------------------------------- + +Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org) + +To the extent possible under law, the author has dedicated all copyright +and related and neighboring rights to this software to the public domain +worldwide. This software is distributed without any warranty. + +See . + +License for fastmod (https://github.com/lemire/fastmod) and ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data) +-------------------------------------- + + Copyright 2018 Daniel Lemire + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +License notice for The C++ REST SDK +----------------------------------- + +C++ REST SDK + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for MessagePack-CSharp +------------------------------------- + +MessagePack for C# + +MIT License + +Copyright (c) 2017 Yoshifumi Kawai + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for lz4net +------------------------------------- + +lz4net + +Copyright (c) 2013-2017, Milosz Krajewski + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Nerdbank.Streams +----------------------------------- + +The MIT License (MIT) + +Copyright (c) Andrew Arnott + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for RapidJSON +---------------------------- + +Tencent is pleased to support the open source community by making RapidJSON available. + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. + +Licensed under the MIT License (the "License"); you may not use this file except +in compliance with the License. You may obtain a copy of the License at + +http://opensource.org/licenses/MIT + +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. + +License notice for DirectX Math Library +--------------------------------------- + +https://github.com/microsoft/DirectXMath/blob/master/LICENSE + + The MIT License (MIT) + +Copyright (c) 2011-2020 Microsoft Corp + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +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 OR COPYRIGHT +HOLDERS 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. + +License notice for ldap4net +--------------------------- + +The MIT License (MIT) + +Copyright (c) 2018 Alexander Chermyanin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for vectorized sorting code +------------------------------------------ + +MIT License + +Copyright (c) 2020 Dan Shechter + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for musl +----------------------- + +musl as a whole is licensed under the following standard MIT license: + +Copyright © 2005-2020 Rich Felker, et al. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + + +License notice for "Faster Unsigned Division by Constants" +------------------------------ + +Reference implementations of computing and using the "magic number" approach to dividing +by constants, including codegen instructions. The unsigned division incorporates the +"round down" optimization per ridiculous_fish. + +This is free and unencumbered software. Any copyright is dedicated to the Public Domain. + + +License notice for mimalloc +----------------------------------- + +MIT License + +Copyright (c) 2019 Microsoft Corporation, Daan Leijen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/buildTransitive/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.targets b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/buildTransitive/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.targets new file mode 100644 index 0000000..98eb1d3 --- /dev/null +++ b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/buildTransitive/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/buildTransitive/netcoreapp3.1/_._ b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/buildTransitive/netcoreapp3.1/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net461/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net461/System.Runtime.CompilerServices.Unsafe.dll new file mode 100644 index 0000000..c5ba4e4 Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net461/System.Runtime.CompilerServices.Unsafe.dll differ diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net461/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net461/System.Runtime.CompilerServices.Unsafe.xml new file mode 100644 index 0000000..9d79492 --- /dev/null +++ b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net461/System.Runtime.CompilerServices.Unsafe.xml @@ -0,0 +1,291 @@ + + + + System.Runtime.CompilerServices.Unsafe + + + + Contains generic, low-level functionality for manipulating pointers. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given void pointer. + The void pointer to add the offset to. + The offset to add. + The type of void pointer. + A new void pointer that reflects the addition of offset to the specified pointer. + + + Adds a byte offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of byte offset to pointer. + + + Adds a byte offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of byte offset to pointer. + + + Determines whether the specified references point to the same location. + The first reference to compare. + The second reference to compare. + The type of reference. + + if and point to the same location; otherwise, . + + + Casts the given object to the specified type. + The object to cast. + The type which the object will be cast to. + The original object, casted to the given type. + + + Reinterprets the given reference as a reference to a value of type . + The reference to reinterpret. + The type of reference to reinterpret. + The desired type of the reference. + A reference to a value of type . + + + Returns a pointer to the given by-ref parameter. + The object whose pointer is obtained. + The type of object. + A pointer to the given value. + + + Reinterprets the given read-only reference as a reference. + The read-only reference to reinterpret. + The type of reference. + A reference to a value of type . + + + Reinterprets the given location as a reference to a value of type . + The location of the value to reference. + The type of the interpreted location. + A reference to a value of type . + + + Determines the byte offset from origin to target from the given references. + The reference to origin. + The reference to target. + The type of reference. + Byte offset from origin to target i.e. - . + + + Copies a value of type to the given location. + The location to copy to. + A pointer to the value to copy. + The type of value to copy. + + + Copies a value of type to the given location. + The location to copy to. + A reference to the value to copy. + The type of value to copy. + + + Copies bytes from the source address to the destination address. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Initializes a block of memory at the given location with a given initial value. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Returns a value that indicates whether a specified reference is greater than another specified reference. + The first value to compare. + The second value to compare. + The type of the reference. + + if is greater than ; otherwise, . + + + Returns a value that indicates whether a specified reference is less than another specified reference. + The first value to compare. + The second value to compare. + The type of the reference. + + if is less than ; otherwise, . + + + Determines if a given reference to a value of type is a null reference. + The reference to check. + The type of the reference. + + if is a null reference; otherwise, . + + + Returns a reference to a value of type that is a null reference. + The type of the reference. + A reference to a value of type that is a null reference. + + + Reads a value of type from the given location. + The location to read from. + The type to read. + An object of type read from the given location. + + + Reads a value of type from the given location without assuming architecture dependent alignment of the addresses. + The location to read from. + The type to read. + An object of type read from the given location. + + + Reads a value of type from the given location without assuming architecture dependent alignment of the addresses. + The location to read from. + The type to read. + An object of type read from the given location. + + + Returns the size of an object of the given type parameter. + The type of object whose size is retrieved. + The size of an object of type . + + + Bypasses definite assignment rules for a given value. + The uninitialized object. + The type of the uninitialized object. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of offset from pointer. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of offset from pointer. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subraction of offset from pointer. + + + Subtracts an element offset from the given void pointer. + The void pointer to subtract the offset from. + The offset to subtract. + The type of the void pointer. + A new void pointer that reflects the subtraction of offset from the specified pointer. + + + Subtracts a byte offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of byte offset from pointer. + + + Subtracts a byte offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subraction of byte offset from pointer. + + + Returns a to a boxed value. + The value to unbox. + The type to be unboxed. + + is , and is a non-nullable value type. + + is not a boxed value type. + +-or- + + is not a boxed . + + cannot be found. + A to the boxed value . + + + Writes a value of type to the given location. + The location to write to. + The value to write. + The type of value to write. + + + Writes a value of type to the given location without assuming architecture dependent alignment of the addresses. + The location to write to. + The value to write. + The type of value to write. + + + Writes a value of type to the given location without assuming architecture dependent alignment of the addresses. + The location to write to. + The value to write. + The type of value to write. + + + \ No newline at end of file diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll new file mode 100644 index 0000000..999abc7 Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll differ diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net6.0/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net6.0/System.Runtime.CompilerServices.Unsafe.xml new file mode 100644 index 0000000..9d79492 --- /dev/null +++ b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/net6.0/System.Runtime.CompilerServices.Unsafe.xml @@ -0,0 +1,291 @@ + + + + System.Runtime.CompilerServices.Unsafe + + + + Contains generic, low-level functionality for manipulating pointers. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given void pointer. + The void pointer to add the offset to. + The offset to add. + The type of void pointer. + A new void pointer that reflects the addition of offset to the specified pointer. + + + Adds a byte offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of byte offset to pointer. + + + Adds a byte offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of byte offset to pointer. + + + Determines whether the specified references point to the same location. + The first reference to compare. + The second reference to compare. + The type of reference. + + if and point to the same location; otherwise, . + + + Casts the given object to the specified type. + The object to cast. + The type which the object will be cast to. + The original object, casted to the given type. + + + Reinterprets the given reference as a reference to a value of type . + The reference to reinterpret. + The type of reference to reinterpret. + The desired type of the reference. + A reference to a value of type . + + + Returns a pointer to the given by-ref parameter. + The object whose pointer is obtained. + The type of object. + A pointer to the given value. + + + Reinterprets the given read-only reference as a reference. + The read-only reference to reinterpret. + The type of reference. + A reference to a value of type . + + + Reinterprets the given location as a reference to a value of type . + The location of the value to reference. + The type of the interpreted location. + A reference to a value of type . + + + Determines the byte offset from origin to target from the given references. + The reference to origin. + The reference to target. + The type of reference. + Byte offset from origin to target i.e. - . + + + Copies a value of type to the given location. + The location to copy to. + A pointer to the value to copy. + The type of value to copy. + + + Copies a value of type to the given location. + The location to copy to. + A reference to the value to copy. + The type of value to copy. + + + Copies bytes from the source address to the destination address. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Initializes a block of memory at the given location with a given initial value. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Returns a value that indicates whether a specified reference is greater than another specified reference. + The first value to compare. + The second value to compare. + The type of the reference. + + if is greater than ; otherwise, . + + + Returns a value that indicates whether a specified reference is less than another specified reference. + The first value to compare. + The second value to compare. + The type of the reference. + + if is less than ; otherwise, . + + + Determines if a given reference to a value of type is a null reference. + The reference to check. + The type of the reference. + + if is a null reference; otherwise, . + + + Returns a reference to a value of type that is a null reference. + The type of the reference. + A reference to a value of type that is a null reference. + + + Reads a value of type from the given location. + The location to read from. + The type to read. + An object of type read from the given location. + + + Reads a value of type from the given location without assuming architecture dependent alignment of the addresses. + The location to read from. + The type to read. + An object of type read from the given location. + + + Reads a value of type from the given location without assuming architecture dependent alignment of the addresses. + The location to read from. + The type to read. + An object of type read from the given location. + + + Returns the size of an object of the given type parameter. + The type of object whose size is retrieved. + The size of an object of type . + + + Bypasses definite assignment rules for a given value. + The uninitialized object. + The type of the uninitialized object. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of offset from pointer. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of offset from pointer. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subraction of offset from pointer. + + + Subtracts an element offset from the given void pointer. + The void pointer to subtract the offset from. + The offset to subtract. + The type of the void pointer. + A new void pointer that reflects the subtraction of offset from the specified pointer. + + + Subtracts a byte offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of byte offset from pointer. + + + Subtracts a byte offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subraction of byte offset from pointer. + + + Returns a to a boxed value. + The value to unbox. + The type to be unboxed. + + is , and is a non-nullable value type. + + is not a boxed value type. + +-or- + + is not a boxed . + + cannot be found. + A to the boxed value . + + + Writes a value of type to the given location. + The location to write to. + The value to write. + The type of value to write. + + + Writes a value of type to the given location without assuming architecture dependent alignment of the addresses. + The location to write to. + The value to write. + The type of value to write. + + + Writes a value of type to the given location without assuming architecture dependent alignment of the addresses. + The location to write to. + The value to write. + The type of value to write. + + + \ No newline at end of file diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.dll new file mode 100644 index 0000000..103462b Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.dll differ diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.xml new file mode 100644 index 0000000..9d79492 --- /dev/null +++ b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.xml @@ -0,0 +1,291 @@ + + + + System.Runtime.CompilerServices.Unsafe + + + + Contains generic, low-level functionality for manipulating pointers. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given void pointer. + The void pointer to add the offset to. + The offset to add. + The type of void pointer. + A new void pointer that reflects the addition of offset to the specified pointer. + + + Adds a byte offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of byte offset to pointer. + + + Adds a byte offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of byte offset to pointer. + + + Determines whether the specified references point to the same location. + The first reference to compare. + The second reference to compare. + The type of reference. + + if and point to the same location; otherwise, . + + + Casts the given object to the specified type. + The object to cast. + The type which the object will be cast to. + The original object, casted to the given type. + + + Reinterprets the given reference as a reference to a value of type . + The reference to reinterpret. + The type of reference to reinterpret. + The desired type of the reference. + A reference to a value of type . + + + Returns a pointer to the given by-ref parameter. + The object whose pointer is obtained. + The type of object. + A pointer to the given value. + + + Reinterprets the given read-only reference as a reference. + The read-only reference to reinterpret. + The type of reference. + A reference to a value of type . + + + Reinterprets the given location as a reference to a value of type . + The location of the value to reference. + The type of the interpreted location. + A reference to a value of type . + + + Determines the byte offset from origin to target from the given references. + The reference to origin. + The reference to target. + The type of reference. + Byte offset from origin to target i.e. - . + + + Copies a value of type to the given location. + The location to copy to. + A pointer to the value to copy. + The type of value to copy. + + + Copies a value of type to the given location. + The location to copy to. + A reference to the value to copy. + The type of value to copy. + + + Copies bytes from the source address to the destination address. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Initializes a block of memory at the given location with a given initial value. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Returns a value that indicates whether a specified reference is greater than another specified reference. + The first value to compare. + The second value to compare. + The type of the reference. + + if is greater than ; otherwise, . + + + Returns a value that indicates whether a specified reference is less than another specified reference. + The first value to compare. + The second value to compare. + The type of the reference. + + if is less than ; otherwise, . + + + Determines if a given reference to a value of type is a null reference. + The reference to check. + The type of the reference. + + if is a null reference; otherwise, . + + + Returns a reference to a value of type that is a null reference. + The type of the reference. + A reference to a value of type that is a null reference. + + + Reads a value of type from the given location. + The location to read from. + The type to read. + An object of type read from the given location. + + + Reads a value of type from the given location without assuming architecture dependent alignment of the addresses. + The location to read from. + The type to read. + An object of type read from the given location. + + + Reads a value of type from the given location without assuming architecture dependent alignment of the addresses. + The location to read from. + The type to read. + An object of type read from the given location. + + + Returns the size of an object of the given type parameter. + The type of object whose size is retrieved. + The size of an object of type . + + + Bypasses definite assignment rules for a given value. + The uninitialized object. + The type of the uninitialized object. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of offset from pointer. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of offset from pointer. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subraction of offset from pointer. + + + Subtracts an element offset from the given void pointer. + The void pointer to subtract the offset from. + The offset to subtract. + The type of the void pointer. + A new void pointer that reflects the subtraction of offset from the specified pointer. + + + Subtracts a byte offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of byte offset from pointer. + + + Subtracts a byte offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subraction of byte offset from pointer. + + + Returns a to a boxed value. + The value to unbox. + The type to be unboxed. + + is , and is a non-nullable value type. + + is not a boxed value type. + +-or- + + is not a boxed . + + cannot be found. + A to the boxed value . + + + Writes a value of type to the given location. + The location to write to. + The value to write. + The type of value to write. + + + Writes a value of type to the given location without assuming architecture dependent alignment of the addresses. + The location to write to. + The value to write. + The type of value to write. + + + Writes a value of type to the given location without assuming architecture dependent alignment of the addresses. + The location to write to. + The value to write. + The type of value to write. + + + \ No newline at end of file diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll new file mode 100644 index 0000000..491a80a Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll differ diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml new file mode 100644 index 0000000..9d79492 --- /dev/null +++ b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml @@ -0,0 +1,291 @@ + + + + System.Runtime.CompilerServices.Unsafe + + + + Contains generic, low-level functionality for manipulating pointers. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of offset to pointer. + + + Adds an element offset to the given void pointer. + The void pointer to add the offset to. + The offset to add. + The type of void pointer. + A new void pointer that reflects the addition of offset to the specified pointer. + + + Adds a byte offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of byte offset to pointer. + + + Adds a byte offset to the given reference. + The reference to add the offset to. + The offset to add. + The type of reference. + A new reference that reflects the addition of byte offset to pointer. + + + Determines whether the specified references point to the same location. + The first reference to compare. + The second reference to compare. + The type of reference. + + if and point to the same location; otherwise, . + + + Casts the given object to the specified type. + The object to cast. + The type which the object will be cast to. + The original object, casted to the given type. + + + Reinterprets the given reference as a reference to a value of type . + The reference to reinterpret. + The type of reference to reinterpret. + The desired type of the reference. + A reference to a value of type . + + + Returns a pointer to the given by-ref parameter. + The object whose pointer is obtained. + The type of object. + A pointer to the given value. + + + Reinterprets the given read-only reference as a reference. + The read-only reference to reinterpret. + The type of reference. + A reference to a value of type . + + + Reinterprets the given location as a reference to a value of type . + The location of the value to reference. + The type of the interpreted location. + A reference to a value of type . + + + Determines the byte offset from origin to target from the given references. + The reference to origin. + The reference to target. + The type of reference. + Byte offset from origin to target i.e. - . + + + Copies a value of type to the given location. + The location to copy to. + A pointer to the value to copy. + The type of value to copy. + + + Copies a value of type to the given location. + The location to copy to. + A reference to the value to copy. + The type of value to copy. + + + Copies bytes from the source address to the destination address. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Copies bytes from the source address to the destination address without assuming architecture dependent alignment of the addresses. + The destination address to copy to. + The source address to copy from. + The number of bytes to copy. + + + Initializes a block of memory at the given location with a given initial value. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Initializes a block of memory at the given location with a given initial value without assuming architecture dependent alignment of the address. + The address of the start of the memory block to initialize. + The value to initialize the block to. + The number of bytes to initialize. + + + Returns a value that indicates whether a specified reference is greater than another specified reference. + The first value to compare. + The second value to compare. + The type of the reference. + + if is greater than ; otherwise, . + + + Returns a value that indicates whether a specified reference is less than another specified reference. + The first value to compare. + The second value to compare. + The type of the reference. + + if is less than ; otherwise, . + + + Determines if a given reference to a value of type is a null reference. + The reference to check. + The type of the reference. + + if is a null reference; otherwise, . + + + Returns a reference to a value of type that is a null reference. + The type of the reference. + A reference to a value of type that is a null reference. + + + Reads a value of type from the given location. + The location to read from. + The type to read. + An object of type read from the given location. + + + Reads a value of type from the given location without assuming architecture dependent alignment of the addresses. + The location to read from. + The type to read. + An object of type read from the given location. + + + Reads a value of type from the given location without assuming architecture dependent alignment of the addresses. + The location to read from. + The type to read. + An object of type read from the given location. + + + Returns the size of an object of the given type parameter. + The type of object whose size is retrieved. + The size of an object of type . + + + Bypasses definite assignment rules for a given value. + The uninitialized object. + The type of the uninitialized object. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of offset from pointer. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of offset from pointer. + + + Subtracts an element offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subraction of offset from pointer. + + + Subtracts an element offset from the given void pointer. + The void pointer to subtract the offset from. + The offset to subtract. + The type of the void pointer. + A new void pointer that reflects the subtraction of offset from the specified pointer. + + + Subtracts a byte offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subtraction of byte offset from pointer. + + + Subtracts a byte offset from the given reference. + The reference to subtract the offset from. + The offset to subtract. + The type of reference. + A new reference that reflects the subraction of byte offset from pointer. + + + Returns a to a boxed value. + The value to unbox. + The type to be unboxed. + + is , and is a non-nullable value type. + + is not a boxed value type. + +-or- + + is not a boxed . + + cannot be found. + A to the boxed value . + + + Writes a value of type to the given location. + The location to write to. + The value to write. + The type of value to write. + + + Writes a value of type to the given location without assuming architecture dependent alignment of the addresses. + The location to write to. + The value to write. + The type of value to write. + + + Writes a value of type to the given location without assuming architecture dependent alignment of the addresses. + The location to write to. + The value to write. + The type of value to write. + + + \ No newline at end of file diff --git a/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/useSharedDesignerContext.txt b/packages/System.Runtime.CompilerServices.Unsafe.6.0.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Text.Encodings.Web.8.0.0/.signature.p7s b/packages/System.Text.Encodings.Web.8.0.0/.signature.p7s new file mode 100644 index 0000000..334f66f Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/.signature.p7s differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/Icon.png b/packages/System.Text.Encodings.Web.8.0.0/Icon.png new file mode 100644 index 0000000..a0f1fdb Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/Icon.png differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/LICENSE.TXT b/packages/System.Text.Encodings.Web.8.0.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Text.Encodings.Web.8.0.0/System.Text.Encodings.Web.8.0.0.nupkg b/packages/System.Text.Encodings.Web.8.0.0/System.Text.Encodings.Web.8.0.0.nupkg new file mode 100644 index 0000000..e3af7a6 Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/System.Text.Encodings.Web.8.0.0.nupkg differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/THIRD-PARTY-NOTICES.TXT b/packages/System.Text.Encodings.Web.8.0.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..4b40333 --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,1272 @@ +.NET Runtime uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Runtime software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +https://www.unicode.org/license.html + +Copyright © 1991-2022 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +https://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.13, October 13th, 2022 + + Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR +COPYRIGHT HOLDERS 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. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for vectorized hex parsing +-------------------------------------------------------- + +Copyright (c) 2022, Geoff Langdale +Copyright (c) 2022, Wojciech Mula +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for RFC 3492 +--------------------------- + +The punycode implementation is based on the sample code in RFC 3492 + +Copyright (C) The Internet Society (2003). All Rights Reserved. + +This document and translations of it may be copied and furnished to +others, and derivative works that comment on or otherwise explain it +or assist in its implementation may be prepared, copied, published +and distributed, in whole or in part, without restriction of any +kind, provided that the above copyright notice and this paragraph are +included on all such copies and derivative works. However, this +document itself may not be modified in any way, such as by removing +the copyright notice or references to the Internet Society or other +Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for +copyrights defined in the Internet Standards process must be +followed, or as required to translate it into languages other than +English. + +The limited permissions granted above are perpetual and will not be +revoked by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an +"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Copyright(C) The Internet Society 1997. All Rights Reserved. + +This document and translations of it may be copied and furnished to others, +and derivative works that comment on or otherwise explain it or assist in +its implementation may be prepared, copied, published and distributed, in +whole or in part, without restriction of any kind, provided that the above +copyright notice and this paragraph are included on all such copies and +derivative works.However, this document itself may not be modified in any +way, such as by removing the copyright notice or references to the Internet +Society or other Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for copyrights +defined in the Internet Standards process must be followed, or as required +to translate it into languages other than English. + +The limited permissions granted above are perpetual and will not be revoked +by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an "AS IS" +basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE +DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO +ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY +RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A +PARTICULAR PURPOSE. + +License notice for Algorithm from RFC 4122 - +A Universally Unique IDentifier (UUID) URN Namespace +---------------------------------------------------- + +Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. +Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & +Digital Equipment Corporation, Maynard, Mass. +Copyright (c) 1998 Microsoft. +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: permission to use, copy, +modify, and distribute this file for any purpose is hereby +granted without fee, provided that the above copyright notices and +this notice appears in all source code copies, and that none of +the names of Open Software Foundation, Inc., Hewlett-Packard +Company, Microsoft, or Digital Equipment Corporation be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Neither Open Software +Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital +Equipment Corporation makes any representations about the +suitability of this software for any purpose." + +License notice for The LLVM Compiler Infrastructure (Legacy License) +-------------------------------------------------------------------- + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +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 +CONTRIBUTORS OR COPYRIGHT HOLDERS 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 WITH THE +SOFTWARE. + +License notice for Bob Jenkins +------------------------------ + +By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this +code any way you wish, private, educational, or commercial. It's free. + +License notice for Greg Parker +------------------------------ + +Greg Parker gparker@cs.stanford.edu December 2000 +This code is in the public domain and may be copied or modified without +permission. + +License notice for libunwind based code +---------------------------------------- + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for Printing Floating-Point Numbers (Dragon4) +------------------------------------------------------------ + +/****************************************************************************** + Copyright (c) 2014 Ryan Juckett + http://www.ryanjuckett.com/ + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source + distribution. +******************************************************************************/ + +License notice for Printing Floating-point Numbers (Grisu3) +----------------------------------------------------------- + +Copyright 2012 the V8 project authors. All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xxHash +------------------------- + +xxHash - Extremely Fast Hash algorithm +Header File +Copyright (C) 2012-2021 Yann Collet + +BSD 2-Clause License (https://www.opensource.org/licenses/bsd-license.php) + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +You can contact the author at: + - xxHash homepage: https://www.xxhash.com + - xxHash source repository: https://github.com/Cyan4973/xxHash + +License notice for Berkeley SoftFloat Release 3e +------------------------------------------------ + +https://github.com/ucb-bar/berkeley-softfloat-3 +https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt + +License for Berkeley SoftFloat Release 3e + +John R. Hauser +2018 January 20 + +The following applies to the whole of SoftFloat Release 3e as well as to +each source file individually. + +Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the +University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions, and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE +DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xoshiro RNGs +-------------------------------- + +Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org) + +To the extent possible under law, the author has dedicated all copyright +and related and neighboring rights to this software to the public domain +worldwide. This software is distributed without any warranty. + +See . + +License for fastmod (https://github.com/lemire/fastmod), ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data) and fastrange (https://github.com/lemire/fastrange) +-------------------------------------- + + Copyright 2018 Daniel Lemire + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +License for sse4-strstr (https://github.com/WojciechMula/sse4-strstr) +-------------------------------------- + + Copyright (c) 2008-2016, Wojciech Mula + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for The C++ REST SDK +----------------------------------- + +C++ REST SDK + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for MessagePack-CSharp +------------------------------------- + +MessagePack for C# + +MIT License + +Copyright (c) 2017 Yoshifumi Kawai + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for lz4net +------------------------------------- + +lz4net + +Copyright (c) 2013-2017, Milosz Krajewski + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Nerdbank.Streams +----------------------------------- + +The MIT License (MIT) + +Copyright (c) Andrew Arnott + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for RapidJSON +---------------------------- + +Tencent is pleased to support the open source community by making RapidJSON available. + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. + +Licensed under the MIT License (the "License"); you may not use this file except +in compliance with the License. You may obtain a copy of the License at + +http://opensource.org/licenses/MIT + +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. + +License notice for DirectX Math Library +--------------------------------------- + +https://github.com/microsoft/DirectXMath/blob/master/LICENSE + + The MIT License (MIT) + +Copyright (c) 2011-2020 Microsoft Corp + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +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 OR COPYRIGHT +HOLDERS 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. + +License notice for ldap4net +--------------------------- + +The MIT License (MIT) + +Copyright (c) 2018 Alexander Chermyanin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for vectorized sorting code +------------------------------------------ + +MIT License + +Copyright (c) 2020 Dan Shechter + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for musl +----------------------- + +musl as a whole is licensed under the following standard MIT license: + +Copyright © 2005-2020 Rich Felker, et al. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + + +License notice for "Faster Unsigned Division by Constants" +------------------------------ + +Reference implementations of computing and using the "magic number" approach to dividing +by constants, including codegen instructions. The unsigned division incorporates the +"round down" optimization per ridiculous_fish. + +This is free and unencumbered software. Any copyright is dedicated to the Public Domain. + + +License notice for mimalloc +----------------------------------- + +MIT License + +Copyright (c) 2019 Microsoft Corporation, Daan Leijen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for The LLVM Project +----------------------------------- + +Copyright 2019 LLVM Project + +Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions; +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +https://llvm.org/LICENSE.txt + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +License notice for Apple header files +------------------------------------- + +Copyright (c) 1980, 1986, 1993 + The Regents of the University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. +4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +License notice for JavaScript queues +------------------------------------- + +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. + +Statement of Purpose +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: +the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; +moral rights retained by the original author(s) and/or performer(s); +publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; +rights protecting the extraction, dissemination, use and reuse of data in a Work; +database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and +other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. +4. Limitations and Disclaimers. +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. + + +License notice for FastFloat algorithm +------------------------------------- +MIT License +Copyright (c) 2021 csFastFloat authors +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License notice for MsQuic +-------------------------------------- + +Copyright (c) Microsoft Corporation. +Licensed under the MIT License. + +Available at +https://github.com/microsoft/msquic/blob/main/LICENSE + +License notice for m-ou-se/floatconv +------------------------------- + +Copyright (c) 2020 Mara Bos +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for code from The Practice of Programming +------------------------------- + +Copyright (C) 1999 Lucent Technologies + +Excerpted from 'The Practice of Programming +by Brian W. Kernighan and Rob Pike + +You may use this code for any purpose, as long as you leave the copyright notice and book citation attached. + +Notice for Euclidean Affine Functions and Applications to Calendar +Algorithms +------------------------------- + +Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar +Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf + +License notice for amd/aocl-libm-ose +------------------------------- + +Copyright (C) 2008-2020 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +License notice for fmtlib/fmt +------------------------------- + +Formatting library for C++ + +Copyright (c) 2012 - present, Victor Zverovich + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License for Jb Evain +--------------------- + +Copyright (c) 2006 Jb Evain (jbevain@gmail.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +License for MurmurHash3 +-------------------------------------- + +https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp + +MurmurHash3 was written by Austin Appleby, and is placed in the public +domain. The author hereby disclaims copyright to this source + +License for Fast CRC Computation +-------------------------------------- + +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc32_ieee_by4.asm +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc64_ecma_norm_by8.asm + +Copyright(c) 2011-2015 Intel Corporation All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License for C# Implementation of Fast CRC Computation +----------------------------------------------------- + +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/src/ImageSharp/Formats/Png/Zlib/Crc32.cs + +Copyright (c) Six Labors. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/LICENSE diff --git a/packages/System.Text.Encodings.Web.8.0.0/buildTransitive/net461/System.Text.Encodings.Web.targets b/packages/System.Text.Encodings.Web.8.0.0/buildTransitive/net461/System.Text.Encodings.Web.targets new file mode 100644 index 0000000..3bf4481 --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/buildTransitive/net461/System.Text.Encodings.Web.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Text.Encodings.Web.8.0.0/buildTransitive/net462/_._ b/packages/System.Text.Encodings.Web.8.0.0/buildTransitive/net462/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Text.Encodings.Web.8.0.0/buildTransitive/net6.0/_._ b/packages/System.Text.Encodings.Web.8.0.0/buildTransitive/net6.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Text.Encodings.Web.8.0.0/buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets b/packages/System.Text.Encodings.Web.8.0.0/buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets new file mode 100644 index 0000000..7bce2aa --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Text.Encodings.Web.8.0.0/lib/net462/System.Text.Encodings.Web.dll b/packages/System.Text.Encodings.Web.8.0.0/lib/net462/System.Text.Encodings.Web.dll new file mode 100644 index 0000000..3d16c7e Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/lib/net462/System.Text.Encodings.Web.dll differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/lib/net462/System.Text.Encodings.Web.xml b/packages/System.Text.Encodings.Web.8.0.0/lib/net462/System.Text.Encodings.Web.xml new file mode 100644 index 0000000..ecf7979 --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/lib/net462/System.Text.Encodings.Web.xml @@ -0,0 +1,939 @@ + + + + System.Text.Encodings.Web + + + + Represents an HTML character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of the HtmlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the HtmlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a JavaScript character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of JavaScriptEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the JavaScriptEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Gets a built-in JavaScript encoder instance that is less strict about what is encoded. + A JavaScript encoder instance. + + + The base class of web encoders. + + + Initializes a new instance of the class. + + + Encodes characters from an array and writes them to a object. + The stream to which to write the encoded text. + The array of characters to encode. + The array index of the first character to encode. + The number of characters in the array to encode. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the specified string to a object. + The stream to which to write the encoded text. + The string to encode. + + + Encodes a substring and writes it to a object. + The stream to which to write the encoded text. + The string whose substring is to be encoded. + The index where the substring starts. + The number of characters in the substring. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the supplied characters. + A source buffer containing the characters to encode. + The destination buffer to which the encoded form of will be written. + The number of characters consumed from the buffer. + The number of characters written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + An enumeration value that describes the result of the encoding operation. + + + Encodes the supplied string and returns the encoded text as a new string. + The string to encode. + + is . + The method failed. The encoder does not implement correctly. + The encoded string. + + + Encodes the supplied UTF-8 text. + A source buffer containing the UTF-8 text to encode. + The destination buffer to which the encoded form of will be written. + The number of bytes consumed from the buffer. + The number of bytes written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + A status code that describes the result of the encoding operation. + + + Finds the index of the first character to encode. + The text buffer to search. + The number of characters in . + The index of the first character to encode. + + + Finds the first element in a UTF-8 text input buffer that would be escaped by the current encoder instance. + The UTF-8 text input buffer to search. + The index of the first element in that would be escaped by the current encoder instance, or -1 if no data in requires escaping. + + + Encodes a Unicode scalar value and writes it to a buffer. + A Unicode scalar value. + A pointer to the buffer to which to write the encoded text. + The length of the destination in characters. + When the method returns, indicates the number of characters written to the . + + if is too small to fit the encoded text; otherwise, returns . + + + Determines if a given Unicode scalar value will be encoded. + A Unicode scalar value. + + if the value will be encoded by this encoder; otherwise, returns . + + + Gets the maximum number of characters that this encoder can generate for each input code point. + The maximum number of characters. + + + Represents a filter that allows only certain Unicode code points. + + + Instantiates an empty filter (allows no code points through by default). + + + Instantiates a filter by cloning the allowed list of another object. + The other object to be cloned. + + + Instantiates a filter where only the character ranges specified by are allowed by the filter. + The allowed character ranges. + + is . + + + Allows the character specified by through the filter. + The allowed character. + + + Allows all characters specified by through the filter. + The allowed characters. + + is . + + + Allows all code points specified by . + The allowed code points. + + is . + + + Allows all characters specified by through the filter. + The range of characters to be allowed. + + is . + + + Allows all characters specified by through the filter. + The ranges of characters to be allowed. + + is . + + + Resets this object by disallowing all characters. + + + Disallows the character through the filter. + The disallowed character. + + + Disallows all characters specified by through the filter. + The disallowed characters. + + is . + + + Disallows all characters specified by through the filter. + The range of characters to be disallowed. + + is . + + + Disallows all characters specified by through the filter. + The ranges of characters to be disallowed. + + is . + + + Gets an enumerator of all allowed code points. + The enumerator of allowed code points. + + + Represents a URL character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of UrlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the UrlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a contiguous range of Unicode code points. + + + Creates a new that includes a specified number of characters starting at a specified Unicode code point. + The first code point in the range. + The number of code points in the range. + + is less than zero or greater than 0xFFFF. + +-or- + + is less than zero. + +-or- + + plus is greater than 0xFFFF. + + + Creates a new instance from a span of characters. + The first character in the range. + The last character in the range. + + precedes . + A range that includes all characters between and . + + + Gets the first code point in the range represented by this instance. + The first code point in the range. + + + Gets the number of code points in the range represented by this instance. + The number of code points in the range. + + + Provides static properties that return predefined instances that correspond to blocks from the Unicode specification. + + + Gets a range that consists of the entire Basic Multilingual Plane (BMP), from U+0000 to U+FFFF). + A range that consists of the entire BMP. + + + Gets the Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + The Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + + + Gets the Arabic Unicode block (U+0600-U+06FF). + The Arabic Unicode block (U+0600-U+06FF). + + + Gets the Arabic Extended-A Unicode block (U+08A0-U+08FF). + The Arabic Extended-A Unicode block (U+08A0-U+08FF). + + + A corresponding to the 'Arabic Extended-B' Unicode block (U+0870..U+089F). + + + Gets the Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + The Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + + + Gets the Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + The Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + + + Gets the Arabic Supplement Unicode block (U+0750-U+077F). + The Arabic Supplement Unicode block (U+0750-U+077F). + + + Gets the Armenian Unicode block (U+0530-U+058F). + The Armenian Unicode block (U+0530-U+058F). + + + Gets the Arrows Unicode block (U+2190-U+21FF). + The Arrows Unicode block (U+2190-U+21FF). + + + Gets the Balinese Unicode block (U+1B00-U+1B7F). + The Balinese Unicode block (U+1B00-U+1B7F). + + + Gets the Bamum Unicode block (U+A6A0-U+A6FF). + The Bamum Unicode block (U+A6A0-U+A6FF). + + + Gets the Basic Latin Unicode block (U+0021-U+007F). + The Basic Latin Unicode block (U+0021-U+007F). + + + Gets the Batak Unicode block (U+1BC0-U+1BFF). + The Batak Unicode block (U+1BC0-U+1BFF). + + + Gets the Bengali Unicode block (U+0980-U+09FF). + The Bengali Unicode block (U+0980-U+09FF). + + + Gets the Block Elements Unicode block (U+2580-U+259F). + The Block Elements Unicode block (U+2580-U+259F). + + + Gets the Bopomofo Unicode block (U+3100-U+312F). + The Bopomofo Unicode block (U+3105-U+312F). + + + Gets the Bopomofo Extended Unicode block (U+31A0-U+31BF). + The Bopomofo Extended Unicode block (U+31A0-U+31BF). + + + Gets the Box Drawing Unicode block (U+2500-U+257F). + The Box Drawing Unicode block (U+2500-U+257F). + + + Gets the Braille Patterns Unicode block (U+2800-U+28FF). + The Braille Patterns Unicode block (U+2800-U+28FF). + + + Gets the Buginese Unicode block (U+1A00-U+1A1F). + The Buginese Unicode block (U+1A00-U+1A1F). + + + Gets the Buhid Unicode block (U+1740-U+175F). + The Buhid Unicode block (U+1740-U+175F). + + + Gets the Cham Unicode block (U+AA00-U+AA5F). + The Cham Unicode block (U+AA00-U+AA5F). + + + Gets the Cherokee Unicode block (U+13A0-U+13FF). + The Cherokee Unicode block (U+13A0-U+13FF). + + + Gets the Cherokee Supplement Unicode block (U+AB70-U+ABBF). + The Cherokee Supplement Unicode block (U+AB70-U+ABBF). + + + Gets the CJK Compatibility Unicode block (U+3300-U+33FF). + The CJK Compatibility Unicode block (U+3300-U+33FF). + + + Gets the CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + The CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + + + Gets the CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + The CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + + + Gets the CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + The CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + + + Gets the CJK Strokes Unicode block (U+31C0-U+31EF). + The CJK Strokes Unicode block (U+31C0-U+31EF). + + + Gets the CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + The CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + + + Gets the CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + The CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + + + Gets the CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + The CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + + + Gets the Combining Diacritical Marks Unicode block (U+0300-U+036F). + The Combining Diacritical Marks Unicode block (U+0300-U+036F). + + + Gets the Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + The Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + + + Gets the Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + The Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + + + Gets the Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + The Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + + + Gets the Combining Half Marks Unicode block (U+FE20-U+FE2F). + The Combining Half Marks Unicode block (U+FE20-U+FE2F). + + + Gets the Common Indic Number Forms Unicode block (U+A830-U+A83F). + The Common Indic Number Forms Unicode block (U+A830-U+A83F). + + + Gets the Control Pictures Unicode block (U+2400-U+243F). + The Control Pictures Unicode block (U+2400-U+243F). + + + Gets the Coptic Unicode block (U+2C80-U+2CFF). + The Coptic Unicode block (U+2C80-U+2CFF). + + + Gets the Currency Symbols Unicode block (U+20A0-U+20CF). + The Currency Symbols Unicode block (U+20A0-U+20CF). + + + Gets the Cyrillic Unicode block (U+0400-U+04FF). + The Cyrillic Unicode block (U+0400-U+04FF). + + + Gets the Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + The Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + + + Gets the Cyrillic Extended-B Unicode block (U+A640-U+A69F). + The Cyrillic Extended-B Unicode block (U+A640-U+A69F). + + + A corresponding to the 'Cyrillic Extended-C' Unicode block (U+1C80..U+1C8F). + + + Gets the Cyrillic Supplement Unicode block (U+0500-U+052F). + The Cyrillic Supplement Unicode block (U+0500-U+052F). + + + Gets the Devangari Unicode block (U+0900-U+097F). + The Devangari Unicode block (U+0900-U+097F). + + + Gets the Devanagari Extended Unicode block (U+A8E0-U+A8FF). + The Devanagari Extended Unicode block (U+A8E0-U+A8FF). + + + Gets the Dingbats Unicode block (U+2700-U+27BF). + The Dingbats Unicode block (U+2700-U+27BF). + + + Gets the Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + The Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + + + Gets the Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + The Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + + + Gets the Ethiopic Unicode block (U+1200-U+137C). + The Ethiopic Unicode block (U+1200-U+137C). + + + Gets the Ethipic Extended Unicode block (U+2D80-U+2DDF). + The Ethipic Extended Unicode block (U+2D80-U+2DDF). + + + Gets the Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + The Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + + + Gets the Ethiopic Supplement Unicode block (U+1380-U+1399). + The Ethiopic Supplement Unicode block (U+1380-U+1399). + + + Gets the General Punctuation Unicode block (U+2000-U+206F). + The General Punctuation Unicode block (U+2000-U+206F). + + + Gets the Geometric Shapes Unicode block (U+25A0-U+25FF). + The Geometric Shapes Unicode block (U+25A0-U+25FF). + + + Gets the Georgian Unicode block (U+10A0-U+10FF). + The Georgian Unicode block (U+10A0-U+10FF). + + + A corresponding to the 'Georgian Extended' Unicode block (U+1C90..U+1CBF). + + + Gets the Georgian Supplement Unicode block (U+2D00-U+2D2F). + The Georgian Supplement Unicode block (U+2D00-U+2D2F). + + + Gets the Glagolitic Unicode block (U+2C00-U+2C5F). + The Glagolitic Unicode block (U+2C00-U+2C5F). + + + Gets the Greek and Coptic Unicode block (U+0370-U+03FF). + The Greek and Coptic Unicode block (U+0370-U+03FF). + + + Gets the Greek Extended Unicode block (U+1F00-U+1FFF). + The Greek Extended Unicode block (U+1F00-U+1FFF). + + + Gets the Gujarti Unicode block (U+0A81-U+0AFF). + The Gujarti Unicode block (U+0A81-U+0AFF). + + + Gets the Gurmukhi Unicode block (U+0A01-U+0A7F). + The Gurmukhi Unicode block (U+0A01-U+0A7F). + + + Gets the Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + The Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + + + Gets the Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + The Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + + + Gets the Hangul Jamo Unicode block (U+1100-U+11FF). + The Hangul Jamo Unicode block (U+1100-U+11FF). + + + Gets the Hangul Jamo Extended-A Unicode block (U+A960-U+A9F). + The Hangul Jamo Extended-A Unicode block (U+A960-U+A97F). + + + Gets the Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + The Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + + + Gets the Hangul Syllables Unicode block (U+AC00-U+D7AF). + The Hangul Syllables Unicode block (U+AC00-U+D7AF). + + + Gets the Hanunoo Unicode block (U+1720-U+173F). + The Hanunoo Unicode block (U+1720-U+173F). + + + Gets the Hebrew Unicode block (U+0590-U+05FF). + The Hebrew Unicode block (U+0590-U+05FF). + + + Gets the Hiragana Unicode block (U+3040-U+309F). + The Hiragana Unicode block (U+3040-U+309F). + + + Gets the Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + The Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + + + Gets the IPA Extensions Unicode block (U+0250-U+02AF). + The IPA Extensions Unicode block (U+0250-U+02AF). + + + Gets the Javanese Unicode block (U+A980-U+A9DF). + The Javanese Unicode block (U+A980-U+A9DF). + + + Gets the Kanbun Unicode block (U+3190-U+319F). + The Kanbun Unicode block (U+3190-U+319F). + + + Gets the Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + The Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + + + Gets the Kannada Unicode block (U+0C81-U+0CFF). + The Kannada Unicode block (U+0C81-U+0CFF). + + + Gets the Katakana Unicode block (U+30A0-U+30FF). + The Katakana Unicode block (U+30A0-U+30FF). + + + Gets the Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + The Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + + + Gets the Kayah Li Unicode block (U+A900-U+A92F). + The Kayah Li Unicode block (U+A900-U+A92F). + + + Gets the Khmer Unicode block (U+1780-U+17FF). + The Khmer Unicode block (U+1780-U+17FF). + + + Gets the Khmer Symbols Unicode block (U+19E0-U+19FF). + The Khmer Symbols Unicode block (U+19E0-U+19FF). + + + Gets the Lao Unicode block (U+0E80-U+0EDF). + The Lao Unicode block (U+0E80-U+0EDF). + + + Gets the Latin-1 Supplement Unicode block (U+00A1-U+00FF). + The Latin-1 Supplement Unicode block (U+00A1-U+00FF). + + + Gets the Latin Extended-A Unicode block (U+0100-U+017F). + The Latin Extended-A Unicode block (U+0100-U+017F). + + + Gets the Latin Extended Additional Unicode block (U+1E00-U+1EFF). + The Latin Extended Additional Unicode block (U+1E00-U+1EFF). + + + Gets the Latin Extended-B Unicode block (U+0180-U+024F). + The Latin Extended-B Unicode block (U+0180-U+024F). + + + Gets the Latin Extended-C Unicode block (U+2C60-U+2C7F). + The Latin Extended-C Unicode block (U+2C60-U+2C7F). + + + Gets the Latin Extended-D Unicode block (U+A720-U+A7FF). + The Latin Extended-D Unicode block (U+A720-U+A7FF). + + + Gets the Latin Extended-E Unicode block (U+AB30-U+AB6F). + The Latin Extended-E Unicode block (U+AB30-U+AB6F). + + + Gets the Lepcha Unicode block (U+1C00-U+1C4F). + The Lepcha Unicode block (U+1C00-U+1C4F). + + + Gets the Letterlike Symbols Unicode block (U+2100-U+214F). + The Letterlike Symbols Unicode block (U+2100-U+214F). + + + Gets the Limbu Unicode block (U+1900-U+194F). + The Limbu Unicode block (U+1900-U+194F). + + + Gets the Lisu Unicode block (U+A4D0-U+A4FF). + The Lisu Unicode block (U+A4D0-U+A4FF). + + + Gets the Malayalam Unicode block (U+0D00-U+0D7F). + The Malayalam Unicode block (U+0D00-U+0D7F). + + + Gets the Mandaic Unicode block (U+0840-U+085F). + The Mandaic Unicode block (U+0840-U+085F). + + + Gets the Mathematical Operators Unicode block (U+2200-U+22FF). + The Mathematical Operators Unicode block (U+2200-U+22FF). + + + Gets the Meetei Mayek Unicode block (U+ABC0-U+ABFF). + The Meetei Mayek Unicode block (U+ABC0-U+ABFF). + + + Gets the Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + The Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + + + Gets the Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + The Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + + + Gets the Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + The Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + + + Gets the Miscellaneous Symbols Unicode block (U+2600-U+26FF). + The Miscellaneous Symbols Unicode block (U+2600-U+26FF). + + + Gets the Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + The Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + + + Gets the Miscellaneous Technical Unicode block (U+2300-U+23FF). + The Miscellaneous Technical Unicode block (U+2300-U+23FF). + + + Gets the Modifier Tone Letters Unicode block (U+A700-U+A71F). + The Modifier Tone Letters Unicode block (U+A700-U+A71F). + + + Gets the Mongolian Unicode block (U+1800-U+18AF). + The Mongolian Unicode block (U+1800-U+18AF). + + + Gets the Myanmar Unicode block (U+1000-U+109F). + The Myanmar Unicode block (U+1000-U+109F). + + + Gets the Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + The Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + + + Gets the Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + The Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + + + Gets the New Tai Lue Unicode block (U+1980-U+19DF). + The New Tai Lue Unicode block (U+1980-U+19DF). + + + Gets the NKo Unicode block (U+07C0-U+07FF). + The NKo Unicode block (U+07C0-U+07FF). + + + Gets an empty Unicode range. + A Unicode range with no elements. + + + Gets the Number Forms Unicode block (U+2150-U+218F). + The Number Forms Unicode block (U+2150-U+218F). + + + Gets the Ogham Unicode block (U+1680-U+169F). + The Ogham Unicode block (U+1680-U+169F). + + + Gets the Ol Chiki Unicode block (U+1C50-U+1C7F). + The Ol Chiki Unicode block (U+1C50-U+1C7F). + + + Gets the Optical Character Recognition Unicode block (U+2440-U+245F). + The Optical Character Recognition Unicode block (U+2440-U+245F). + + + Gets the Oriya Unicode block (U+0B00-U+0B7F). + The Oriya Unicode block (U+0B00-U+0B7F). + + + Gets the Phags-pa Unicode block (U+A840-U+A87F). + The Phags-pa Unicode block (U+A840-U+A87F). + + + Gets the Phonetic Extensions Unicode block (U+1D00-U+1D7F). + The Phonetic Extensions Unicode block (U+1D00-U+1D7F). + + + Gets the Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + The Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + + + Gets the Rejang Unicode block (U+A930-U+A95F). + The Rejang Unicode block (U+A930-U+A95F). + + + Gets the Runic Unicode block (U+16A0-U+16FF). + The Runic Unicode block (U+16A0-U+16FF). + + + Gets the Samaritan Unicode block (U+0800-U+083F). + The Samaritan Unicode block (U+0800-U+083F). + + + Gets the Saurashtra Unicode block (U+A880-U+A8DF). + The Saurashtra Unicode block (U+A880-U+A8DF). + + + Gets the Sinhala Unicode block (U+0D80-U+0DFF). + The Sinhala Unicode block (U+0D80-U+0DFF). + + + Gets the Small Form Variants Unicode block (U+FE50-U+FE6F). + The Small Form Variants Unicode block (U+FE50-U+FE6F). + + + Gets the Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + The Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + + + Gets the Specials Unicode block (U+FFF0-U+FFFF). + The Specials Unicode block (U+FFF0-U+FFFF). + + + Gets the Sundanese Unicode block (U+1B80-U+1BBF). + The Sundanese Unicode block (U+1B80-U+1BBF). + + + Gets the Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + The Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + + + Gets the Superscripts and Subscripts Unicode block (U+2070-U+209F). + The Superscripts and Subscripts Unicode block (U+2070-U+209F). + + + Gets the Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + The Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + + + Gets the Supplemental Arrows-B Unicode block (U+2900-U+297F). + The Supplemental Arrows-B Unicode block (U+2900-U+297F). + + + Gets the Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + The Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + + + Gets the Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + The Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + + + Gets the Syloti Nagri Unicode block (U+A800-U+A82F). + The Syloti Nagri Unicode block (U+A800-U+A82F). + + + Gets the Syriac Unicode block (U+0700-U+074F). + The Syriac Unicode block (U+0700-U+074F). + + + A corresponding to the 'Syriac Supplement' Unicode block (U+0860..U+086F). + + + Gets the Tagalog Unicode block (U+1700-U+171F). + The Tagalog Unicode block (U+1700-U+171F). + + + Gets the Tagbanwa Unicode block (U+1760-U+177F). + The Tagbanwa Unicode block (U+1760-U+177F). + + + Gets the Tai Le Unicode block (U+1950-U+197F). + The Tai Le Unicode block (U+1950-U+197F). + + + Gets the Tai Tham Unicode block (U+1A20-U+1AAF). + The Tai Tham Unicode block (U+1A20-U+1AAF). + + + Gets the Tai Viet Unicode block (U+AA80-U+AADF). + The Tai Viet Unicode block (U+AA80-U+AADF). + + + Gets the Tamil Unicode block (U+0B80-U+0BFF). + The Tamil Unicode block (U+0B82-U+0BFA). + + + Gets the Telugu Unicode block (U+0C00-U+0C7F). + The Telugu Unicode block (U+0C00-U+0C7F). + + + Gets the Thaana Unicode block (U+0780-U+07BF). + The Thaana Unicode block (U+0780-U+07BF). + + + Gets the Thai Unicode block (U+0E00-U+0E7F). + The Thai Unicode block (U+0E00-U+0E7F). + + + Gets the Tibetan Unicode block (U+0F00-U+0FFF). + The Tibetan Unicode block (U+0F00-U+0FFF). + + + Gets the Tifinagh Unicode block (U+2D30-U+2D7F). + The Tifinagh Unicode block (U+2D30-U+2D7F). + + + Gets the Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + The Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + + + Gets the Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + The Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + + + Gets the Vai Unicode block (U+A500-U+A63F). + The Vai Unicode block (U+A500-U+A63F). + + + Gets the Variation Selectors Unicode block (U+FE00-U+FE0F). + The Variation Selectors Unicode block (U+FE00-U+FE0F). + + + Gets the Vedic Extensions Unicode block (U+1CD0-U+1CFF). + The Vedic Extensions Unicode block (U+1CD0-U+1CFF). + + + Gets the Vertical Forms Unicode block (U+FE10-U+FE1F). + The Vertical Forms Unicode block (U+FE10-U+FE1F). + + + Gets the Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + The Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + + + Gets the Yi Radicals Unicode block (U+A490-U+A4CF). + The Yi Radicals Unicode block (U+A490-U+A4CF). + + + Gets the Yi Syllables Unicode block (U+A000-U+A48F). + The Yi Syllables Unicode block (U+A000-U+A48F). + + + \ No newline at end of file diff --git a/packages/System.Text.Encodings.Web.8.0.0/lib/net6.0/System.Text.Encodings.Web.dll b/packages/System.Text.Encodings.Web.8.0.0/lib/net6.0/System.Text.Encodings.Web.dll new file mode 100644 index 0000000..7471f7c Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/lib/net6.0/System.Text.Encodings.Web.dll differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/lib/net6.0/System.Text.Encodings.Web.xml b/packages/System.Text.Encodings.Web.8.0.0/lib/net6.0/System.Text.Encodings.Web.xml new file mode 100644 index 0000000..ecf7979 --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/lib/net6.0/System.Text.Encodings.Web.xml @@ -0,0 +1,939 @@ + + + + System.Text.Encodings.Web + + + + Represents an HTML character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of the HtmlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the HtmlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a JavaScript character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of JavaScriptEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the JavaScriptEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Gets a built-in JavaScript encoder instance that is less strict about what is encoded. + A JavaScript encoder instance. + + + The base class of web encoders. + + + Initializes a new instance of the class. + + + Encodes characters from an array and writes them to a object. + The stream to which to write the encoded text. + The array of characters to encode. + The array index of the first character to encode. + The number of characters in the array to encode. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the specified string to a object. + The stream to which to write the encoded text. + The string to encode. + + + Encodes a substring and writes it to a object. + The stream to which to write the encoded text. + The string whose substring is to be encoded. + The index where the substring starts. + The number of characters in the substring. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the supplied characters. + A source buffer containing the characters to encode. + The destination buffer to which the encoded form of will be written. + The number of characters consumed from the buffer. + The number of characters written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + An enumeration value that describes the result of the encoding operation. + + + Encodes the supplied string and returns the encoded text as a new string. + The string to encode. + + is . + The method failed. The encoder does not implement correctly. + The encoded string. + + + Encodes the supplied UTF-8 text. + A source buffer containing the UTF-8 text to encode. + The destination buffer to which the encoded form of will be written. + The number of bytes consumed from the buffer. + The number of bytes written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + A status code that describes the result of the encoding operation. + + + Finds the index of the first character to encode. + The text buffer to search. + The number of characters in . + The index of the first character to encode. + + + Finds the first element in a UTF-8 text input buffer that would be escaped by the current encoder instance. + The UTF-8 text input buffer to search. + The index of the first element in that would be escaped by the current encoder instance, or -1 if no data in requires escaping. + + + Encodes a Unicode scalar value and writes it to a buffer. + A Unicode scalar value. + A pointer to the buffer to which to write the encoded text. + The length of the destination in characters. + When the method returns, indicates the number of characters written to the . + + if is too small to fit the encoded text; otherwise, returns . + + + Determines if a given Unicode scalar value will be encoded. + A Unicode scalar value. + + if the value will be encoded by this encoder; otherwise, returns . + + + Gets the maximum number of characters that this encoder can generate for each input code point. + The maximum number of characters. + + + Represents a filter that allows only certain Unicode code points. + + + Instantiates an empty filter (allows no code points through by default). + + + Instantiates a filter by cloning the allowed list of another object. + The other object to be cloned. + + + Instantiates a filter where only the character ranges specified by are allowed by the filter. + The allowed character ranges. + + is . + + + Allows the character specified by through the filter. + The allowed character. + + + Allows all characters specified by through the filter. + The allowed characters. + + is . + + + Allows all code points specified by . + The allowed code points. + + is . + + + Allows all characters specified by through the filter. + The range of characters to be allowed. + + is . + + + Allows all characters specified by through the filter. + The ranges of characters to be allowed. + + is . + + + Resets this object by disallowing all characters. + + + Disallows the character through the filter. + The disallowed character. + + + Disallows all characters specified by through the filter. + The disallowed characters. + + is . + + + Disallows all characters specified by through the filter. + The range of characters to be disallowed. + + is . + + + Disallows all characters specified by through the filter. + The ranges of characters to be disallowed. + + is . + + + Gets an enumerator of all allowed code points. + The enumerator of allowed code points. + + + Represents a URL character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of UrlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the UrlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a contiguous range of Unicode code points. + + + Creates a new that includes a specified number of characters starting at a specified Unicode code point. + The first code point in the range. + The number of code points in the range. + + is less than zero or greater than 0xFFFF. + +-or- + + is less than zero. + +-or- + + plus is greater than 0xFFFF. + + + Creates a new instance from a span of characters. + The first character in the range. + The last character in the range. + + precedes . + A range that includes all characters between and . + + + Gets the first code point in the range represented by this instance. + The first code point in the range. + + + Gets the number of code points in the range represented by this instance. + The number of code points in the range. + + + Provides static properties that return predefined instances that correspond to blocks from the Unicode specification. + + + Gets a range that consists of the entire Basic Multilingual Plane (BMP), from U+0000 to U+FFFF). + A range that consists of the entire BMP. + + + Gets the Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + The Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + + + Gets the Arabic Unicode block (U+0600-U+06FF). + The Arabic Unicode block (U+0600-U+06FF). + + + Gets the Arabic Extended-A Unicode block (U+08A0-U+08FF). + The Arabic Extended-A Unicode block (U+08A0-U+08FF). + + + A corresponding to the 'Arabic Extended-B' Unicode block (U+0870..U+089F). + + + Gets the Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + The Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + + + Gets the Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + The Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + + + Gets the Arabic Supplement Unicode block (U+0750-U+077F). + The Arabic Supplement Unicode block (U+0750-U+077F). + + + Gets the Armenian Unicode block (U+0530-U+058F). + The Armenian Unicode block (U+0530-U+058F). + + + Gets the Arrows Unicode block (U+2190-U+21FF). + The Arrows Unicode block (U+2190-U+21FF). + + + Gets the Balinese Unicode block (U+1B00-U+1B7F). + The Balinese Unicode block (U+1B00-U+1B7F). + + + Gets the Bamum Unicode block (U+A6A0-U+A6FF). + The Bamum Unicode block (U+A6A0-U+A6FF). + + + Gets the Basic Latin Unicode block (U+0021-U+007F). + The Basic Latin Unicode block (U+0021-U+007F). + + + Gets the Batak Unicode block (U+1BC0-U+1BFF). + The Batak Unicode block (U+1BC0-U+1BFF). + + + Gets the Bengali Unicode block (U+0980-U+09FF). + The Bengali Unicode block (U+0980-U+09FF). + + + Gets the Block Elements Unicode block (U+2580-U+259F). + The Block Elements Unicode block (U+2580-U+259F). + + + Gets the Bopomofo Unicode block (U+3100-U+312F). + The Bopomofo Unicode block (U+3105-U+312F). + + + Gets the Bopomofo Extended Unicode block (U+31A0-U+31BF). + The Bopomofo Extended Unicode block (U+31A0-U+31BF). + + + Gets the Box Drawing Unicode block (U+2500-U+257F). + The Box Drawing Unicode block (U+2500-U+257F). + + + Gets the Braille Patterns Unicode block (U+2800-U+28FF). + The Braille Patterns Unicode block (U+2800-U+28FF). + + + Gets the Buginese Unicode block (U+1A00-U+1A1F). + The Buginese Unicode block (U+1A00-U+1A1F). + + + Gets the Buhid Unicode block (U+1740-U+175F). + The Buhid Unicode block (U+1740-U+175F). + + + Gets the Cham Unicode block (U+AA00-U+AA5F). + The Cham Unicode block (U+AA00-U+AA5F). + + + Gets the Cherokee Unicode block (U+13A0-U+13FF). + The Cherokee Unicode block (U+13A0-U+13FF). + + + Gets the Cherokee Supplement Unicode block (U+AB70-U+ABBF). + The Cherokee Supplement Unicode block (U+AB70-U+ABBF). + + + Gets the CJK Compatibility Unicode block (U+3300-U+33FF). + The CJK Compatibility Unicode block (U+3300-U+33FF). + + + Gets the CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + The CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + + + Gets the CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + The CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + + + Gets the CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + The CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + + + Gets the CJK Strokes Unicode block (U+31C0-U+31EF). + The CJK Strokes Unicode block (U+31C0-U+31EF). + + + Gets the CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + The CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + + + Gets the CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + The CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + + + Gets the CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + The CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + + + Gets the Combining Diacritical Marks Unicode block (U+0300-U+036F). + The Combining Diacritical Marks Unicode block (U+0300-U+036F). + + + Gets the Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + The Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + + + Gets the Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + The Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + + + Gets the Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + The Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + + + Gets the Combining Half Marks Unicode block (U+FE20-U+FE2F). + The Combining Half Marks Unicode block (U+FE20-U+FE2F). + + + Gets the Common Indic Number Forms Unicode block (U+A830-U+A83F). + The Common Indic Number Forms Unicode block (U+A830-U+A83F). + + + Gets the Control Pictures Unicode block (U+2400-U+243F). + The Control Pictures Unicode block (U+2400-U+243F). + + + Gets the Coptic Unicode block (U+2C80-U+2CFF). + The Coptic Unicode block (U+2C80-U+2CFF). + + + Gets the Currency Symbols Unicode block (U+20A0-U+20CF). + The Currency Symbols Unicode block (U+20A0-U+20CF). + + + Gets the Cyrillic Unicode block (U+0400-U+04FF). + The Cyrillic Unicode block (U+0400-U+04FF). + + + Gets the Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + The Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + + + Gets the Cyrillic Extended-B Unicode block (U+A640-U+A69F). + The Cyrillic Extended-B Unicode block (U+A640-U+A69F). + + + A corresponding to the 'Cyrillic Extended-C' Unicode block (U+1C80..U+1C8F). + + + Gets the Cyrillic Supplement Unicode block (U+0500-U+052F). + The Cyrillic Supplement Unicode block (U+0500-U+052F). + + + Gets the Devangari Unicode block (U+0900-U+097F). + The Devangari Unicode block (U+0900-U+097F). + + + Gets the Devanagari Extended Unicode block (U+A8E0-U+A8FF). + The Devanagari Extended Unicode block (U+A8E0-U+A8FF). + + + Gets the Dingbats Unicode block (U+2700-U+27BF). + The Dingbats Unicode block (U+2700-U+27BF). + + + Gets the Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + The Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + + + Gets the Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + The Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + + + Gets the Ethiopic Unicode block (U+1200-U+137C). + The Ethiopic Unicode block (U+1200-U+137C). + + + Gets the Ethipic Extended Unicode block (U+2D80-U+2DDF). + The Ethipic Extended Unicode block (U+2D80-U+2DDF). + + + Gets the Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + The Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + + + Gets the Ethiopic Supplement Unicode block (U+1380-U+1399). + The Ethiopic Supplement Unicode block (U+1380-U+1399). + + + Gets the General Punctuation Unicode block (U+2000-U+206F). + The General Punctuation Unicode block (U+2000-U+206F). + + + Gets the Geometric Shapes Unicode block (U+25A0-U+25FF). + The Geometric Shapes Unicode block (U+25A0-U+25FF). + + + Gets the Georgian Unicode block (U+10A0-U+10FF). + The Georgian Unicode block (U+10A0-U+10FF). + + + A corresponding to the 'Georgian Extended' Unicode block (U+1C90..U+1CBF). + + + Gets the Georgian Supplement Unicode block (U+2D00-U+2D2F). + The Georgian Supplement Unicode block (U+2D00-U+2D2F). + + + Gets the Glagolitic Unicode block (U+2C00-U+2C5F). + The Glagolitic Unicode block (U+2C00-U+2C5F). + + + Gets the Greek and Coptic Unicode block (U+0370-U+03FF). + The Greek and Coptic Unicode block (U+0370-U+03FF). + + + Gets the Greek Extended Unicode block (U+1F00-U+1FFF). + The Greek Extended Unicode block (U+1F00-U+1FFF). + + + Gets the Gujarti Unicode block (U+0A81-U+0AFF). + The Gujarti Unicode block (U+0A81-U+0AFF). + + + Gets the Gurmukhi Unicode block (U+0A01-U+0A7F). + The Gurmukhi Unicode block (U+0A01-U+0A7F). + + + Gets the Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + The Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + + + Gets the Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + The Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + + + Gets the Hangul Jamo Unicode block (U+1100-U+11FF). + The Hangul Jamo Unicode block (U+1100-U+11FF). + + + Gets the Hangul Jamo Extended-A Unicode block (U+A960-U+A9F). + The Hangul Jamo Extended-A Unicode block (U+A960-U+A97F). + + + Gets the Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + The Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + + + Gets the Hangul Syllables Unicode block (U+AC00-U+D7AF). + The Hangul Syllables Unicode block (U+AC00-U+D7AF). + + + Gets the Hanunoo Unicode block (U+1720-U+173F). + The Hanunoo Unicode block (U+1720-U+173F). + + + Gets the Hebrew Unicode block (U+0590-U+05FF). + The Hebrew Unicode block (U+0590-U+05FF). + + + Gets the Hiragana Unicode block (U+3040-U+309F). + The Hiragana Unicode block (U+3040-U+309F). + + + Gets the Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + The Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + + + Gets the IPA Extensions Unicode block (U+0250-U+02AF). + The IPA Extensions Unicode block (U+0250-U+02AF). + + + Gets the Javanese Unicode block (U+A980-U+A9DF). + The Javanese Unicode block (U+A980-U+A9DF). + + + Gets the Kanbun Unicode block (U+3190-U+319F). + The Kanbun Unicode block (U+3190-U+319F). + + + Gets the Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + The Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + + + Gets the Kannada Unicode block (U+0C81-U+0CFF). + The Kannada Unicode block (U+0C81-U+0CFF). + + + Gets the Katakana Unicode block (U+30A0-U+30FF). + The Katakana Unicode block (U+30A0-U+30FF). + + + Gets the Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + The Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + + + Gets the Kayah Li Unicode block (U+A900-U+A92F). + The Kayah Li Unicode block (U+A900-U+A92F). + + + Gets the Khmer Unicode block (U+1780-U+17FF). + The Khmer Unicode block (U+1780-U+17FF). + + + Gets the Khmer Symbols Unicode block (U+19E0-U+19FF). + The Khmer Symbols Unicode block (U+19E0-U+19FF). + + + Gets the Lao Unicode block (U+0E80-U+0EDF). + The Lao Unicode block (U+0E80-U+0EDF). + + + Gets the Latin-1 Supplement Unicode block (U+00A1-U+00FF). + The Latin-1 Supplement Unicode block (U+00A1-U+00FF). + + + Gets the Latin Extended-A Unicode block (U+0100-U+017F). + The Latin Extended-A Unicode block (U+0100-U+017F). + + + Gets the Latin Extended Additional Unicode block (U+1E00-U+1EFF). + The Latin Extended Additional Unicode block (U+1E00-U+1EFF). + + + Gets the Latin Extended-B Unicode block (U+0180-U+024F). + The Latin Extended-B Unicode block (U+0180-U+024F). + + + Gets the Latin Extended-C Unicode block (U+2C60-U+2C7F). + The Latin Extended-C Unicode block (U+2C60-U+2C7F). + + + Gets the Latin Extended-D Unicode block (U+A720-U+A7FF). + The Latin Extended-D Unicode block (U+A720-U+A7FF). + + + Gets the Latin Extended-E Unicode block (U+AB30-U+AB6F). + The Latin Extended-E Unicode block (U+AB30-U+AB6F). + + + Gets the Lepcha Unicode block (U+1C00-U+1C4F). + The Lepcha Unicode block (U+1C00-U+1C4F). + + + Gets the Letterlike Symbols Unicode block (U+2100-U+214F). + The Letterlike Symbols Unicode block (U+2100-U+214F). + + + Gets the Limbu Unicode block (U+1900-U+194F). + The Limbu Unicode block (U+1900-U+194F). + + + Gets the Lisu Unicode block (U+A4D0-U+A4FF). + The Lisu Unicode block (U+A4D0-U+A4FF). + + + Gets the Malayalam Unicode block (U+0D00-U+0D7F). + The Malayalam Unicode block (U+0D00-U+0D7F). + + + Gets the Mandaic Unicode block (U+0840-U+085F). + The Mandaic Unicode block (U+0840-U+085F). + + + Gets the Mathematical Operators Unicode block (U+2200-U+22FF). + The Mathematical Operators Unicode block (U+2200-U+22FF). + + + Gets the Meetei Mayek Unicode block (U+ABC0-U+ABFF). + The Meetei Mayek Unicode block (U+ABC0-U+ABFF). + + + Gets the Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + The Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + + + Gets the Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + The Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + + + Gets the Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + The Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + + + Gets the Miscellaneous Symbols Unicode block (U+2600-U+26FF). + The Miscellaneous Symbols Unicode block (U+2600-U+26FF). + + + Gets the Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + The Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + + + Gets the Miscellaneous Technical Unicode block (U+2300-U+23FF). + The Miscellaneous Technical Unicode block (U+2300-U+23FF). + + + Gets the Modifier Tone Letters Unicode block (U+A700-U+A71F). + The Modifier Tone Letters Unicode block (U+A700-U+A71F). + + + Gets the Mongolian Unicode block (U+1800-U+18AF). + The Mongolian Unicode block (U+1800-U+18AF). + + + Gets the Myanmar Unicode block (U+1000-U+109F). + The Myanmar Unicode block (U+1000-U+109F). + + + Gets the Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + The Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + + + Gets the Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + The Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + + + Gets the New Tai Lue Unicode block (U+1980-U+19DF). + The New Tai Lue Unicode block (U+1980-U+19DF). + + + Gets the NKo Unicode block (U+07C0-U+07FF). + The NKo Unicode block (U+07C0-U+07FF). + + + Gets an empty Unicode range. + A Unicode range with no elements. + + + Gets the Number Forms Unicode block (U+2150-U+218F). + The Number Forms Unicode block (U+2150-U+218F). + + + Gets the Ogham Unicode block (U+1680-U+169F). + The Ogham Unicode block (U+1680-U+169F). + + + Gets the Ol Chiki Unicode block (U+1C50-U+1C7F). + The Ol Chiki Unicode block (U+1C50-U+1C7F). + + + Gets the Optical Character Recognition Unicode block (U+2440-U+245F). + The Optical Character Recognition Unicode block (U+2440-U+245F). + + + Gets the Oriya Unicode block (U+0B00-U+0B7F). + The Oriya Unicode block (U+0B00-U+0B7F). + + + Gets the Phags-pa Unicode block (U+A840-U+A87F). + The Phags-pa Unicode block (U+A840-U+A87F). + + + Gets the Phonetic Extensions Unicode block (U+1D00-U+1D7F). + The Phonetic Extensions Unicode block (U+1D00-U+1D7F). + + + Gets the Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + The Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + + + Gets the Rejang Unicode block (U+A930-U+A95F). + The Rejang Unicode block (U+A930-U+A95F). + + + Gets the Runic Unicode block (U+16A0-U+16FF). + The Runic Unicode block (U+16A0-U+16FF). + + + Gets the Samaritan Unicode block (U+0800-U+083F). + The Samaritan Unicode block (U+0800-U+083F). + + + Gets the Saurashtra Unicode block (U+A880-U+A8DF). + The Saurashtra Unicode block (U+A880-U+A8DF). + + + Gets the Sinhala Unicode block (U+0D80-U+0DFF). + The Sinhala Unicode block (U+0D80-U+0DFF). + + + Gets the Small Form Variants Unicode block (U+FE50-U+FE6F). + The Small Form Variants Unicode block (U+FE50-U+FE6F). + + + Gets the Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + The Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + + + Gets the Specials Unicode block (U+FFF0-U+FFFF). + The Specials Unicode block (U+FFF0-U+FFFF). + + + Gets the Sundanese Unicode block (U+1B80-U+1BBF). + The Sundanese Unicode block (U+1B80-U+1BBF). + + + Gets the Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + The Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + + + Gets the Superscripts and Subscripts Unicode block (U+2070-U+209F). + The Superscripts and Subscripts Unicode block (U+2070-U+209F). + + + Gets the Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + The Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + + + Gets the Supplemental Arrows-B Unicode block (U+2900-U+297F). + The Supplemental Arrows-B Unicode block (U+2900-U+297F). + + + Gets the Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + The Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + + + Gets the Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + The Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + + + Gets the Syloti Nagri Unicode block (U+A800-U+A82F). + The Syloti Nagri Unicode block (U+A800-U+A82F). + + + Gets the Syriac Unicode block (U+0700-U+074F). + The Syriac Unicode block (U+0700-U+074F). + + + A corresponding to the 'Syriac Supplement' Unicode block (U+0860..U+086F). + + + Gets the Tagalog Unicode block (U+1700-U+171F). + The Tagalog Unicode block (U+1700-U+171F). + + + Gets the Tagbanwa Unicode block (U+1760-U+177F). + The Tagbanwa Unicode block (U+1760-U+177F). + + + Gets the Tai Le Unicode block (U+1950-U+197F). + The Tai Le Unicode block (U+1950-U+197F). + + + Gets the Tai Tham Unicode block (U+1A20-U+1AAF). + The Tai Tham Unicode block (U+1A20-U+1AAF). + + + Gets the Tai Viet Unicode block (U+AA80-U+AADF). + The Tai Viet Unicode block (U+AA80-U+AADF). + + + Gets the Tamil Unicode block (U+0B80-U+0BFF). + The Tamil Unicode block (U+0B82-U+0BFA). + + + Gets the Telugu Unicode block (U+0C00-U+0C7F). + The Telugu Unicode block (U+0C00-U+0C7F). + + + Gets the Thaana Unicode block (U+0780-U+07BF). + The Thaana Unicode block (U+0780-U+07BF). + + + Gets the Thai Unicode block (U+0E00-U+0E7F). + The Thai Unicode block (U+0E00-U+0E7F). + + + Gets the Tibetan Unicode block (U+0F00-U+0FFF). + The Tibetan Unicode block (U+0F00-U+0FFF). + + + Gets the Tifinagh Unicode block (U+2D30-U+2D7F). + The Tifinagh Unicode block (U+2D30-U+2D7F). + + + Gets the Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + The Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + + + Gets the Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + The Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + + + Gets the Vai Unicode block (U+A500-U+A63F). + The Vai Unicode block (U+A500-U+A63F). + + + Gets the Variation Selectors Unicode block (U+FE00-U+FE0F). + The Variation Selectors Unicode block (U+FE00-U+FE0F). + + + Gets the Vedic Extensions Unicode block (U+1CD0-U+1CFF). + The Vedic Extensions Unicode block (U+1CD0-U+1CFF). + + + Gets the Vertical Forms Unicode block (U+FE10-U+FE1F). + The Vertical Forms Unicode block (U+FE10-U+FE1F). + + + Gets the Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + The Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + + + Gets the Yi Radicals Unicode block (U+A490-U+A4CF). + The Yi Radicals Unicode block (U+A490-U+A4CF). + + + Gets the Yi Syllables Unicode block (U+A000-U+A48F). + The Yi Syllables Unicode block (U+A000-U+A48F). + + + \ No newline at end of file diff --git a/packages/System.Text.Encodings.Web.8.0.0/lib/net7.0/System.Text.Encodings.Web.dll b/packages/System.Text.Encodings.Web.8.0.0/lib/net7.0/System.Text.Encodings.Web.dll new file mode 100644 index 0000000..6a4a116 Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/lib/net7.0/System.Text.Encodings.Web.dll differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/lib/net7.0/System.Text.Encodings.Web.xml b/packages/System.Text.Encodings.Web.8.0.0/lib/net7.0/System.Text.Encodings.Web.xml new file mode 100644 index 0000000..ecf7979 --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/lib/net7.0/System.Text.Encodings.Web.xml @@ -0,0 +1,939 @@ + + + + System.Text.Encodings.Web + + + + Represents an HTML character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of the HtmlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the HtmlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a JavaScript character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of JavaScriptEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the JavaScriptEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Gets a built-in JavaScript encoder instance that is less strict about what is encoded. + A JavaScript encoder instance. + + + The base class of web encoders. + + + Initializes a new instance of the class. + + + Encodes characters from an array and writes them to a object. + The stream to which to write the encoded text. + The array of characters to encode. + The array index of the first character to encode. + The number of characters in the array to encode. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the specified string to a object. + The stream to which to write the encoded text. + The string to encode. + + + Encodes a substring and writes it to a object. + The stream to which to write the encoded text. + The string whose substring is to be encoded. + The index where the substring starts. + The number of characters in the substring. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the supplied characters. + A source buffer containing the characters to encode. + The destination buffer to which the encoded form of will be written. + The number of characters consumed from the buffer. + The number of characters written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + An enumeration value that describes the result of the encoding operation. + + + Encodes the supplied string and returns the encoded text as a new string. + The string to encode. + + is . + The method failed. The encoder does not implement correctly. + The encoded string. + + + Encodes the supplied UTF-8 text. + A source buffer containing the UTF-8 text to encode. + The destination buffer to which the encoded form of will be written. + The number of bytes consumed from the buffer. + The number of bytes written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + A status code that describes the result of the encoding operation. + + + Finds the index of the first character to encode. + The text buffer to search. + The number of characters in . + The index of the first character to encode. + + + Finds the first element in a UTF-8 text input buffer that would be escaped by the current encoder instance. + The UTF-8 text input buffer to search. + The index of the first element in that would be escaped by the current encoder instance, or -1 if no data in requires escaping. + + + Encodes a Unicode scalar value and writes it to a buffer. + A Unicode scalar value. + A pointer to the buffer to which to write the encoded text. + The length of the destination in characters. + When the method returns, indicates the number of characters written to the . + + if is too small to fit the encoded text; otherwise, returns . + + + Determines if a given Unicode scalar value will be encoded. + A Unicode scalar value. + + if the value will be encoded by this encoder; otherwise, returns . + + + Gets the maximum number of characters that this encoder can generate for each input code point. + The maximum number of characters. + + + Represents a filter that allows only certain Unicode code points. + + + Instantiates an empty filter (allows no code points through by default). + + + Instantiates a filter by cloning the allowed list of another object. + The other object to be cloned. + + + Instantiates a filter where only the character ranges specified by are allowed by the filter. + The allowed character ranges. + + is . + + + Allows the character specified by through the filter. + The allowed character. + + + Allows all characters specified by through the filter. + The allowed characters. + + is . + + + Allows all code points specified by . + The allowed code points. + + is . + + + Allows all characters specified by through the filter. + The range of characters to be allowed. + + is . + + + Allows all characters specified by through the filter. + The ranges of characters to be allowed. + + is . + + + Resets this object by disallowing all characters. + + + Disallows the character through the filter. + The disallowed character. + + + Disallows all characters specified by through the filter. + The disallowed characters. + + is . + + + Disallows all characters specified by through the filter. + The range of characters to be disallowed. + + is . + + + Disallows all characters specified by through the filter. + The ranges of characters to be disallowed. + + is . + + + Gets an enumerator of all allowed code points. + The enumerator of allowed code points. + + + Represents a URL character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of UrlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the UrlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a contiguous range of Unicode code points. + + + Creates a new that includes a specified number of characters starting at a specified Unicode code point. + The first code point in the range. + The number of code points in the range. + + is less than zero or greater than 0xFFFF. + +-or- + + is less than zero. + +-or- + + plus is greater than 0xFFFF. + + + Creates a new instance from a span of characters. + The first character in the range. + The last character in the range. + + precedes . + A range that includes all characters between and . + + + Gets the first code point in the range represented by this instance. + The first code point in the range. + + + Gets the number of code points in the range represented by this instance. + The number of code points in the range. + + + Provides static properties that return predefined instances that correspond to blocks from the Unicode specification. + + + Gets a range that consists of the entire Basic Multilingual Plane (BMP), from U+0000 to U+FFFF). + A range that consists of the entire BMP. + + + Gets the Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + The Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + + + Gets the Arabic Unicode block (U+0600-U+06FF). + The Arabic Unicode block (U+0600-U+06FF). + + + Gets the Arabic Extended-A Unicode block (U+08A0-U+08FF). + The Arabic Extended-A Unicode block (U+08A0-U+08FF). + + + A corresponding to the 'Arabic Extended-B' Unicode block (U+0870..U+089F). + + + Gets the Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + The Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + + + Gets the Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + The Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + + + Gets the Arabic Supplement Unicode block (U+0750-U+077F). + The Arabic Supplement Unicode block (U+0750-U+077F). + + + Gets the Armenian Unicode block (U+0530-U+058F). + The Armenian Unicode block (U+0530-U+058F). + + + Gets the Arrows Unicode block (U+2190-U+21FF). + The Arrows Unicode block (U+2190-U+21FF). + + + Gets the Balinese Unicode block (U+1B00-U+1B7F). + The Balinese Unicode block (U+1B00-U+1B7F). + + + Gets the Bamum Unicode block (U+A6A0-U+A6FF). + The Bamum Unicode block (U+A6A0-U+A6FF). + + + Gets the Basic Latin Unicode block (U+0021-U+007F). + The Basic Latin Unicode block (U+0021-U+007F). + + + Gets the Batak Unicode block (U+1BC0-U+1BFF). + The Batak Unicode block (U+1BC0-U+1BFF). + + + Gets the Bengali Unicode block (U+0980-U+09FF). + The Bengali Unicode block (U+0980-U+09FF). + + + Gets the Block Elements Unicode block (U+2580-U+259F). + The Block Elements Unicode block (U+2580-U+259F). + + + Gets the Bopomofo Unicode block (U+3100-U+312F). + The Bopomofo Unicode block (U+3105-U+312F). + + + Gets the Bopomofo Extended Unicode block (U+31A0-U+31BF). + The Bopomofo Extended Unicode block (U+31A0-U+31BF). + + + Gets the Box Drawing Unicode block (U+2500-U+257F). + The Box Drawing Unicode block (U+2500-U+257F). + + + Gets the Braille Patterns Unicode block (U+2800-U+28FF). + The Braille Patterns Unicode block (U+2800-U+28FF). + + + Gets the Buginese Unicode block (U+1A00-U+1A1F). + The Buginese Unicode block (U+1A00-U+1A1F). + + + Gets the Buhid Unicode block (U+1740-U+175F). + The Buhid Unicode block (U+1740-U+175F). + + + Gets the Cham Unicode block (U+AA00-U+AA5F). + The Cham Unicode block (U+AA00-U+AA5F). + + + Gets the Cherokee Unicode block (U+13A0-U+13FF). + The Cherokee Unicode block (U+13A0-U+13FF). + + + Gets the Cherokee Supplement Unicode block (U+AB70-U+ABBF). + The Cherokee Supplement Unicode block (U+AB70-U+ABBF). + + + Gets the CJK Compatibility Unicode block (U+3300-U+33FF). + The CJK Compatibility Unicode block (U+3300-U+33FF). + + + Gets the CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + The CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + + + Gets the CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + The CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + + + Gets the CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + The CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + + + Gets the CJK Strokes Unicode block (U+31C0-U+31EF). + The CJK Strokes Unicode block (U+31C0-U+31EF). + + + Gets the CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + The CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + + + Gets the CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + The CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + + + Gets the CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + The CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + + + Gets the Combining Diacritical Marks Unicode block (U+0300-U+036F). + The Combining Diacritical Marks Unicode block (U+0300-U+036F). + + + Gets the Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + The Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + + + Gets the Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + The Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + + + Gets the Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + The Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + + + Gets the Combining Half Marks Unicode block (U+FE20-U+FE2F). + The Combining Half Marks Unicode block (U+FE20-U+FE2F). + + + Gets the Common Indic Number Forms Unicode block (U+A830-U+A83F). + The Common Indic Number Forms Unicode block (U+A830-U+A83F). + + + Gets the Control Pictures Unicode block (U+2400-U+243F). + The Control Pictures Unicode block (U+2400-U+243F). + + + Gets the Coptic Unicode block (U+2C80-U+2CFF). + The Coptic Unicode block (U+2C80-U+2CFF). + + + Gets the Currency Symbols Unicode block (U+20A0-U+20CF). + The Currency Symbols Unicode block (U+20A0-U+20CF). + + + Gets the Cyrillic Unicode block (U+0400-U+04FF). + The Cyrillic Unicode block (U+0400-U+04FF). + + + Gets the Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + The Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + + + Gets the Cyrillic Extended-B Unicode block (U+A640-U+A69F). + The Cyrillic Extended-B Unicode block (U+A640-U+A69F). + + + A corresponding to the 'Cyrillic Extended-C' Unicode block (U+1C80..U+1C8F). + + + Gets the Cyrillic Supplement Unicode block (U+0500-U+052F). + The Cyrillic Supplement Unicode block (U+0500-U+052F). + + + Gets the Devangari Unicode block (U+0900-U+097F). + The Devangari Unicode block (U+0900-U+097F). + + + Gets the Devanagari Extended Unicode block (U+A8E0-U+A8FF). + The Devanagari Extended Unicode block (U+A8E0-U+A8FF). + + + Gets the Dingbats Unicode block (U+2700-U+27BF). + The Dingbats Unicode block (U+2700-U+27BF). + + + Gets the Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + The Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + + + Gets the Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + The Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + + + Gets the Ethiopic Unicode block (U+1200-U+137C). + The Ethiopic Unicode block (U+1200-U+137C). + + + Gets the Ethipic Extended Unicode block (U+2D80-U+2DDF). + The Ethipic Extended Unicode block (U+2D80-U+2DDF). + + + Gets the Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + The Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + + + Gets the Ethiopic Supplement Unicode block (U+1380-U+1399). + The Ethiopic Supplement Unicode block (U+1380-U+1399). + + + Gets the General Punctuation Unicode block (U+2000-U+206F). + The General Punctuation Unicode block (U+2000-U+206F). + + + Gets the Geometric Shapes Unicode block (U+25A0-U+25FF). + The Geometric Shapes Unicode block (U+25A0-U+25FF). + + + Gets the Georgian Unicode block (U+10A0-U+10FF). + The Georgian Unicode block (U+10A0-U+10FF). + + + A corresponding to the 'Georgian Extended' Unicode block (U+1C90..U+1CBF). + + + Gets the Georgian Supplement Unicode block (U+2D00-U+2D2F). + The Georgian Supplement Unicode block (U+2D00-U+2D2F). + + + Gets the Glagolitic Unicode block (U+2C00-U+2C5F). + The Glagolitic Unicode block (U+2C00-U+2C5F). + + + Gets the Greek and Coptic Unicode block (U+0370-U+03FF). + The Greek and Coptic Unicode block (U+0370-U+03FF). + + + Gets the Greek Extended Unicode block (U+1F00-U+1FFF). + The Greek Extended Unicode block (U+1F00-U+1FFF). + + + Gets the Gujarti Unicode block (U+0A81-U+0AFF). + The Gujarti Unicode block (U+0A81-U+0AFF). + + + Gets the Gurmukhi Unicode block (U+0A01-U+0A7F). + The Gurmukhi Unicode block (U+0A01-U+0A7F). + + + Gets the Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + The Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + + + Gets the Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + The Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + + + Gets the Hangul Jamo Unicode block (U+1100-U+11FF). + The Hangul Jamo Unicode block (U+1100-U+11FF). + + + Gets the Hangul Jamo Extended-A Unicode block (U+A960-U+A9F). + The Hangul Jamo Extended-A Unicode block (U+A960-U+A97F). + + + Gets the Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + The Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + + + Gets the Hangul Syllables Unicode block (U+AC00-U+D7AF). + The Hangul Syllables Unicode block (U+AC00-U+D7AF). + + + Gets the Hanunoo Unicode block (U+1720-U+173F). + The Hanunoo Unicode block (U+1720-U+173F). + + + Gets the Hebrew Unicode block (U+0590-U+05FF). + The Hebrew Unicode block (U+0590-U+05FF). + + + Gets the Hiragana Unicode block (U+3040-U+309F). + The Hiragana Unicode block (U+3040-U+309F). + + + Gets the Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + The Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + + + Gets the IPA Extensions Unicode block (U+0250-U+02AF). + The IPA Extensions Unicode block (U+0250-U+02AF). + + + Gets the Javanese Unicode block (U+A980-U+A9DF). + The Javanese Unicode block (U+A980-U+A9DF). + + + Gets the Kanbun Unicode block (U+3190-U+319F). + The Kanbun Unicode block (U+3190-U+319F). + + + Gets the Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + The Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + + + Gets the Kannada Unicode block (U+0C81-U+0CFF). + The Kannada Unicode block (U+0C81-U+0CFF). + + + Gets the Katakana Unicode block (U+30A0-U+30FF). + The Katakana Unicode block (U+30A0-U+30FF). + + + Gets the Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + The Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + + + Gets the Kayah Li Unicode block (U+A900-U+A92F). + The Kayah Li Unicode block (U+A900-U+A92F). + + + Gets the Khmer Unicode block (U+1780-U+17FF). + The Khmer Unicode block (U+1780-U+17FF). + + + Gets the Khmer Symbols Unicode block (U+19E0-U+19FF). + The Khmer Symbols Unicode block (U+19E0-U+19FF). + + + Gets the Lao Unicode block (U+0E80-U+0EDF). + The Lao Unicode block (U+0E80-U+0EDF). + + + Gets the Latin-1 Supplement Unicode block (U+00A1-U+00FF). + The Latin-1 Supplement Unicode block (U+00A1-U+00FF). + + + Gets the Latin Extended-A Unicode block (U+0100-U+017F). + The Latin Extended-A Unicode block (U+0100-U+017F). + + + Gets the Latin Extended Additional Unicode block (U+1E00-U+1EFF). + The Latin Extended Additional Unicode block (U+1E00-U+1EFF). + + + Gets the Latin Extended-B Unicode block (U+0180-U+024F). + The Latin Extended-B Unicode block (U+0180-U+024F). + + + Gets the Latin Extended-C Unicode block (U+2C60-U+2C7F). + The Latin Extended-C Unicode block (U+2C60-U+2C7F). + + + Gets the Latin Extended-D Unicode block (U+A720-U+A7FF). + The Latin Extended-D Unicode block (U+A720-U+A7FF). + + + Gets the Latin Extended-E Unicode block (U+AB30-U+AB6F). + The Latin Extended-E Unicode block (U+AB30-U+AB6F). + + + Gets the Lepcha Unicode block (U+1C00-U+1C4F). + The Lepcha Unicode block (U+1C00-U+1C4F). + + + Gets the Letterlike Symbols Unicode block (U+2100-U+214F). + The Letterlike Symbols Unicode block (U+2100-U+214F). + + + Gets the Limbu Unicode block (U+1900-U+194F). + The Limbu Unicode block (U+1900-U+194F). + + + Gets the Lisu Unicode block (U+A4D0-U+A4FF). + The Lisu Unicode block (U+A4D0-U+A4FF). + + + Gets the Malayalam Unicode block (U+0D00-U+0D7F). + The Malayalam Unicode block (U+0D00-U+0D7F). + + + Gets the Mandaic Unicode block (U+0840-U+085F). + The Mandaic Unicode block (U+0840-U+085F). + + + Gets the Mathematical Operators Unicode block (U+2200-U+22FF). + The Mathematical Operators Unicode block (U+2200-U+22FF). + + + Gets the Meetei Mayek Unicode block (U+ABC0-U+ABFF). + The Meetei Mayek Unicode block (U+ABC0-U+ABFF). + + + Gets the Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + The Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + + + Gets the Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + The Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + + + Gets the Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + The Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + + + Gets the Miscellaneous Symbols Unicode block (U+2600-U+26FF). + The Miscellaneous Symbols Unicode block (U+2600-U+26FF). + + + Gets the Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + The Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + + + Gets the Miscellaneous Technical Unicode block (U+2300-U+23FF). + The Miscellaneous Technical Unicode block (U+2300-U+23FF). + + + Gets the Modifier Tone Letters Unicode block (U+A700-U+A71F). + The Modifier Tone Letters Unicode block (U+A700-U+A71F). + + + Gets the Mongolian Unicode block (U+1800-U+18AF). + The Mongolian Unicode block (U+1800-U+18AF). + + + Gets the Myanmar Unicode block (U+1000-U+109F). + The Myanmar Unicode block (U+1000-U+109F). + + + Gets the Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + The Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + + + Gets the Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + The Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + + + Gets the New Tai Lue Unicode block (U+1980-U+19DF). + The New Tai Lue Unicode block (U+1980-U+19DF). + + + Gets the NKo Unicode block (U+07C0-U+07FF). + The NKo Unicode block (U+07C0-U+07FF). + + + Gets an empty Unicode range. + A Unicode range with no elements. + + + Gets the Number Forms Unicode block (U+2150-U+218F). + The Number Forms Unicode block (U+2150-U+218F). + + + Gets the Ogham Unicode block (U+1680-U+169F). + The Ogham Unicode block (U+1680-U+169F). + + + Gets the Ol Chiki Unicode block (U+1C50-U+1C7F). + The Ol Chiki Unicode block (U+1C50-U+1C7F). + + + Gets the Optical Character Recognition Unicode block (U+2440-U+245F). + The Optical Character Recognition Unicode block (U+2440-U+245F). + + + Gets the Oriya Unicode block (U+0B00-U+0B7F). + The Oriya Unicode block (U+0B00-U+0B7F). + + + Gets the Phags-pa Unicode block (U+A840-U+A87F). + The Phags-pa Unicode block (U+A840-U+A87F). + + + Gets the Phonetic Extensions Unicode block (U+1D00-U+1D7F). + The Phonetic Extensions Unicode block (U+1D00-U+1D7F). + + + Gets the Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + The Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + + + Gets the Rejang Unicode block (U+A930-U+A95F). + The Rejang Unicode block (U+A930-U+A95F). + + + Gets the Runic Unicode block (U+16A0-U+16FF). + The Runic Unicode block (U+16A0-U+16FF). + + + Gets the Samaritan Unicode block (U+0800-U+083F). + The Samaritan Unicode block (U+0800-U+083F). + + + Gets the Saurashtra Unicode block (U+A880-U+A8DF). + The Saurashtra Unicode block (U+A880-U+A8DF). + + + Gets the Sinhala Unicode block (U+0D80-U+0DFF). + The Sinhala Unicode block (U+0D80-U+0DFF). + + + Gets the Small Form Variants Unicode block (U+FE50-U+FE6F). + The Small Form Variants Unicode block (U+FE50-U+FE6F). + + + Gets the Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + The Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + + + Gets the Specials Unicode block (U+FFF0-U+FFFF). + The Specials Unicode block (U+FFF0-U+FFFF). + + + Gets the Sundanese Unicode block (U+1B80-U+1BBF). + The Sundanese Unicode block (U+1B80-U+1BBF). + + + Gets the Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + The Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + + + Gets the Superscripts and Subscripts Unicode block (U+2070-U+209F). + The Superscripts and Subscripts Unicode block (U+2070-U+209F). + + + Gets the Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + The Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + + + Gets the Supplemental Arrows-B Unicode block (U+2900-U+297F). + The Supplemental Arrows-B Unicode block (U+2900-U+297F). + + + Gets the Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + The Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + + + Gets the Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + The Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + + + Gets the Syloti Nagri Unicode block (U+A800-U+A82F). + The Syloti Nagri Unicode block (U+A800-U+A82F). + + + Gets the Syriac Unicode block (U+0700-U+074F). + The Syriac Unicode block (U+0700-U+074F). + + + A corresponding to the 'Syriac Supplement' Unicode block (U+0860..U+086F). + + + Gets the Tagalog Unicode block (U+1700-U+171F). + The Tagalog Unicode block (U+1700-U+171F). + + + Gets the Tagbanwa Unicode block (U+1760-U+177F). + The Tagbanwa Unicode block (U+1760-U+177F). + + + Gets the Tai Le Unicode block (U+1950-U+197F). + The Tai Le Unicode block (U+1950-U+197F). + + + Gets the Tai Tham Unicode block (U+1A20-U+1AAF). + The Tai Tham Unicode block (U+1A20-U+1AAF). + + + Gets the Tai Viet Unicode block (U+AA80-U+AADF). + The Tai Viet Unicode block (U+AA80-U+AADF). + + + Gets the Tamil Unicode block (U+0B80-U+0BFF). + The Tamil Unicode block (U+0B82-U+0BFA). + + + Gets the Telugu Unicode block (U+0C00-U+0C7F). + The Telugu Unicode block (U+0C00-U+0C7F). + + + Gets the Thaana Unicode block (U+0780-U+07BF). + The Thaana Unicode block (U+0780-U+07BF). + + + Gets the Thai Unicode block (U+0E00-U+0E7F). + The Thai Unicode block (U+0E00-U+0E7F). + + + Gets the Tibetan Unicode block (U+0F00-U+0FFF). + The Tibetan Unicode block (U+0F00-U+0FFF). + + + Gets the Tifinagh Unicode block (U+2D30-U+2D7F). + The Tifinagh Unicode block (U+2D30-U+2D7F). + + + Gets the Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + The Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + + + Gets the Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + The Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + + + Gets the Vai Unicode block (U+A500-U+A63F). + The Vai Unicode block (U+A500-U+A63F). + + + Gets the Variation Selectors Unicode block (U+FE00-U+FE0F). + The Variation Selectors Unicode block (U+FE00-U+FE0F). + + + Gets the Vedic Extensions Unicode block (U+1CD0-U+1CFF). + The Vedic Extensions Unicode block (U+1CD0-U+1CFF). + + + Gets the Vertical Forms Unicode block (U+FE10-U+FE1F). + The Vertical Forms Unicode block (U+FE10-U+FE1F). + + + Gets the Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + The Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + + + Gets the Yi Radicals Unicode block (U+A490-U+A4CF). + The Yi Radicals Unicode block (U+A490-U+A4CF). + + + Gets the Yi Syllables Unicode block (U+A000-U+A48F). + The Yi Syllables Unicode block (U+A000-U+A48F). + + + \ No newline at end of file diff --git a/packages/System.Text.Encodings.Web.8.0.0/lib/net8.0/System.Text.Encodings.Web.dll b/packages/System.Text.Encodings.Web.8.0.0/lib/net8.0/System.Text.Encodings.Web.dll new file mode 100644 index 0000000..038c64a Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/lib/net8.0/System.Text.Encodings.Web.dll differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/lib/net8.0/System.Text.Encodings.Web.xml b/packages/System.Text.Encodings.Web.8.0.0/lib/net8.0/System.Text.Encodings.Web.xml new file mode 100644 index 0000000..ecf7979 --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/lib/net8.0/System.Text.Encodings.Web.xml @@ -0,0 +1,939 @@ + + + + System.Text.Encodings.Web + + + + Represents an HTML character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of the HtmlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the HtmlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a JavaScript character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of JavaScriptEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the JavaScriptEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Gets a built-in JavaScript encoder instance that is less strict about what is encoded. + A JavaScript encoder instance. + + + The base class of web encoders. + + + Initializes a new instance of the class. + + + Encodes characters from an array and writes them to a object. + The stream to which to write the encoded text. + The array of characters to encode. + The array index of the first character to encode. + The number of characters in the array to encode. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the specified string to a object. + The stream to which to write the encoded text. + The string to encode. + + + Encodes a substring and writes it to a object. + The stream to which to write the encoded text. + The string whose substring is to be encoded. + The index where the substring starts. + The number of characters in the substring. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the supplied characters. + A source buffer containing the characters to encode. + The destination buffer to which the encoded form of will be written. + The number of characters consumed from the buffer. + The number of characters written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + An enumeration value that describes the result of the encoding operation. + + + Encodes the supplied string and returns the encoded text as a new string. + The string to encode. + + is . + The method failed. The encoder does not implement correctly. + The encoded string. + + + Encodes the supplied UTF-8 text. + A source buffer containing the UTF-8 text to encode. + The destination buffer to which the encoded form of will be written. + The number of bytes consumed from the buffer. + The number of bytes written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + A status code that describes the result of the encoding operation. + + + Finds the index of the first character to encode. + The text buffer to search. + The number of characters in . + The index of the first character to encode. + + + Finds the first element in a UTF-8 text input buffer that would be escaped by the current encoder instance. + The UTF-8 text input buffer to search. + The index of the first element in that would be escaped by the current encoder instance, or -1 if no data in requires escaping. + + + Encodes a Unicode scalar value and writes it to a buffer. + A Unicode scalar value. + A pointer to the buffer to which to write the encoded text. + The length of the destination in characters. + When the method returns, indicates the number of characters written to the . + + if is too small to fit the encoded text; otherwise, returns . + + + Determines if a given Unicode scalar value will be encoded. + A Unicode scalar value. + + if the value will be encoded by this encoder; otherwise, returns . + + + Gets the maximum number of characters that this encoder can generate for each input code point. + The maximum number of characters. + + + Represents a filter that allows only certain Unicode code points. + + + Instantiates an empty filter (allows no code points through by default). + + + Instantiates a filter by cloning the allowed list of another object. + The other object to be cloned. + + + Instantiates a filter where only the character ranges specified by are allowed by the filter. + The allowed character ranges. + + is . + + + Allows the character specified by through the filter. + The allowed character. + + + Allows all characters specified by through the filter. + The allowed characters. + + is . + + + Allows all code points specified by . + The allowed code points. + + is . + + + Allows all characters specified by through the filter. + The range of characters to be allowed. + + is . + + + Allows all characters specified by through the filter. + The ranges of characters to be allowed. + + is . + + + Resets this object by disallowing all characters. + + + Disallows the character through the filter. + The disallowed character. + + + Disallows all characters specified by through the filter. + The disallowed characters. + + is . + + + Disallows all characters specified by through the filter. + The range of characters to be disallowed. + + is . + + + Disallows all characters specified by through the filter. + The ranges of characters to be disallowed. + + is . + + + Gets an enumerator of all allowed code points. + The enumerator of allowed code points. + + + Represents a URL character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of UrlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the UrlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a contiguous range of Unicode code points. + + + Creates a new that includes a specified number of characters starting at a specified Unicode code point. + The first code point in the range. + The number of code points in the range. + + is less than zero or greater than 0xFFFF. + +-or- + + is less than zero. + +-or- + + plus is greater than 0xFFFF. + + + Creates a new instance from a span of characters. + The first character in the range. + The last character in the range. + + precedes . + A range that includes all characters between and . + + + Gets the first code point in the range represented by this instance. + The first code point in the range. + + + Gets the number of code points in the range represented by this instance. + The number of code points in the range. + + + Provides static properties that return predefined instances that correspond to blocks from the Unicode specification. + + + Gets a range that consists of the entire Basic Multilingual Plane (BMP), from U+0000 to U+FFFF). + A range that consists of the entire BMP. + + + Gets the Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + The Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + + + Gets the Arabic Unicode block (U+0600-U+06FF). + The Arabic Unicode block (U+0600-U+06FF). + + + Gets the Arabic Extended-A Unicode block (U+08A0-U+08FF). + The Arabic Extended-A Unicode block (U+08A0-U+08FF). + + + A corresponding to the 'Arabic Extended-B' Unicode block (U+0870..U+089F). + + + Gets the Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + The Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + + + Gets the Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + The Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + + + Gets the Arabic Supplement Unicode block (U+0750-U+077F). + The Arabic Supplement Unicode block (U+0750-U+077F). + + + Gets the Armenian Unicode block (U+0530-U+058F). + The Armenian Unicode block (U+0530-U+058F). + + + Gets the Arrows Unicode block (U+2190-U+21FF). + The Arrows Unicode block (U+2190-U+21FF). + + + Gets the Balinese Unicode block (U+1B00-U+1B7F). + The Balinese Unicode block (U+1B00-U+1B7F). + + + Gets the Bamum Unicode block (U+A6A0-U+A6FF). + The Bamum Unicode block (U+A6A0-U+A6FF). + + + Gets the Basic Latin Unicode block (U+0021-U+007F). + The Basic Latin Unicode block (U+0021-U+007F). + + + Gets the Batak Unicode block (U+1BC0-U+1BFF). + The Batak Unicode block (U+1BC0-U+1BFF). + + + Gets the Bengali Unicode block (U+0980-U+09FF). + The Bengali Unicode block (U+0980-U+09FF). + + + Gets the Block Elements Unicode block (U+2580-U+259F). + The Block Elements Unicode block (U+2580-U+259F). + + + Gets the Bopomofo Unicode block (U+3100-U+312F). + The Bopomofo Unicode block (U+3105-U+312F). + + + Gets the Bopomofo Extended Unicode block (U+31A0-U+31BF). + The Bopomofo Extended Unicode block (U+31A0-U+31BF). + + + Gets the Box Drawing Unicode block (U+2500-U+257F). + The Box Drawing Unicode block (U+2500-U+257F). + + + Gets the Braille Patterns Unicode block (U+2800-U+28FF). + The Braille Patterns Unicode block (U+2800-U+28FF). + + + Gets the Buginese Unicode block (U+1A00-U+1A1F). + The Buginese Unicode block (U+1A00-U+1A1F). + + + Gets the Buhid Unicode block (U+1740-U+175F). + The Buhid Unicode block (U+1740-U+175F). + + + Gets the Cham Unicode block (U+AA00-U+AA5F). + The Cham Unicode block (U+AA00-U+AA5F). + + + Gets the Cherokee Unicode block (U+13A0-U+13FF). + The Cherokee Unicode block (U+13A0-U+13FF). + + + Gets the Cherokee Supplement Unicode block (U+AB70-U+ABBF). + The Cherokee Supplement Unicode block (U+AB70-U+ABBF). + + + Gets the CJK Compatibility Unicode block (U+3300-U+33FF). + The CJK Compatibility Unicode block (U+3300-U+33FF). + + + Gets the CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + The CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + + + Gets the CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + The CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + + + Gets the CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + The CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + + + Gets the CJK Strokes Unicode block (U+31C0-U+31EF). + The CJK Strokes Unicode block (U+31C0-U+31EF). + + + Gets the CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + The CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + + + Gets the CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + The CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + + + Gets the CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + The CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + + + Gets the Combining Diacritical Marks Unicode block (U+0300-U+036F). + The Combining Diacritical Marks Unicode block (U+0300-U+036F). + + + Gets the Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + The Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + + + Gets the Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + The Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + + + Gets the Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + The Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + + + Gets the Combining Half Marks Unicode block (U+FE20-U+FE2F). + The Combining Half Marks Unicode block (U+FE20-U+FE2F). + + + Gets the Common Indic Number Forms Unicode block (U+A830-U+A83F). + The Common Indic Number Forms Unicode block (U+A830-U+A83F). + + + Gets the Control Pictures Unicode block (U+2400-U+243F). + The Control Pictures Unicode block (U+2400-U+243F). + + + Gets the Coptic Unicode block (U+2C80-U+2CFF). + The Coptic Unicode block (U+2C80-U+2CFF). + + + Gets the Currency Symbols Unicode block (U+20A0-U+20CF). + The Currency Symbols Unicode block (U+20A0-U+20CF). + + + Gets the Cyrillic Unicode block (U+0400-U+04FF). + The Cyrillic Unicode block (U+0400-U+04FF). + + + Gets the Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + The Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + + + Gets the Cyrillic Extended-B Unicode block (U+A640-U+A69F). + The Cyrillic Extended-B Unicode block (U+A640-U+A69F). + + + A corresponding to the 'Cyrillic Extended-C' Unicode block (U+1C80..U+1C8F). + + + Gets the Cyrillic Supplement Unicode block (U+0500-U+052F). + The Cyrillic Supplement Unicode block (U+0500-U+052F). + + + Gets the Devangari Unicode block (U+0900-U+097F). + The Devangari Unicode block (U+0900-U+097F). + + + Gets the Devanagari Extended Unicode block (U+A8E0-U+A8FF). + The Devanagari Extended Unicode block (U+A8E0-U+A8FF). + + + Gets the Dingbats Unicode block (U+2700-U+27BF). + The Dingbats Unicode block (U+2700-U+27BF). + + + Gets the Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + The Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + + + Gets the Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + The Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + + + Gets the Ethiopic Unicode block (U+1200-U+137C). + The Ethiopic Unicode block (U+1200-U+137C). + + + Gets the Ethipic Extended Unicode block (U+2D80-U+2DDF). + The Ethipic Extended Unicode block (U+2D80-U+2DDF). + + + Gets the Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + The Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + + + Gets the Ethiopic Supplement Unicode block (U+1380-U+1399). + The Ethiopic Supplement Unicode block (U+1380-U+1399). + + + Gets the General Punctuation Unicode block (U+2000-U+206F). + The General Punctuation Unicode block (U+2000-U+206F). + + + Gets the Geometric Shapes Unicode block (U+25A0-U+25FF). + The Geometric Shapes Unicode block (U+25A0-U+25FF). + + + Gets the Georgian Unicode block (U+10A0-U+10FF). + The Georgian Unicode block (U+10A0-U+10FF). + + + A corresponding to the 'Georgian Extended' Unicode block (U+1C90..U+1CBF). + + + Gets the Georgian Supplement Unicode block (U+2D00-U+2D2F). + The Georgian Supplement Unicode block (U+2D00-U+2D2F). + + + Gets the Glagolitic Unicode block (U+2C00-U+2C5F). + The Glagolitic Unicode block (U+2C00-U+2C5F). + + + Gets the Greek and Coptic Unicode block (U+0370-U+03FF). + The Greek and Coptic Unicode block (U+0370-U+03FF). + + + Gets the Greek Extended Unicode block (U+1F00-U+1FFF). + The Greek Extended Unicode block (U+1F00-U+1FFF). + + + Gets the Gujarti Unicode block (U+0A81-U+0AFF). + The Gujarti Unicode block (U+0A81-U+0AFF). + + + Gets the Gurmukhi Unicode block (U+0A01-U+0A7F). + The Gurmukhi Unicode block (U+0A01-U+0A7F). + + + Gets the Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + The Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + + + Gets the Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + The Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + + + Gets the Hangul Jamo Unicode block (U+1100-U+11FF). + The Hangul Jamo Unicode block (U+1100-U+11FF). + + + Gets the Hangul Jamo Extended-A Unicode block (U+A960-U+A9F). + The Hangul Jamo Extended-A Unicode block (U+A960-U+A97F). + + + Gets the Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + The Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + + + Gets the Hangul Syllables Unicode block (U+AC00-U+D7AF). + The Hangul Syllables Unicode block (U+AC00-U+D7AF). + + + Gets the Hanunoo Unicode block (U+1720-U+173F). + The Hanunoo Unicode block (U+1720-U+173F). + + + Gets the Hebrew Unicode block (U+0590-U+05FF). + The Hebrew Unicode block (U+0590-U+05FF). + + + Gets the Hiragana Unicode block (U+3040-U+309F). + The Hiragana Unicode block (U+3040-U+309F). + + + Gets the Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + The Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + + + Gets the IPA Extensions Unicode block (U+0250-U+02AF). + The IPA Extensions Unicode block (U+0250-U+02AF). + + + Gets the Javanese Unicode block (U+A980-U+A9DF). + The Javanese Unicode block (U+A980-U+A9DF). + + + Gets the Kanbun Unicode block (U+3190-U+319F). + The Kanbun Unicode block (U+3190-U+319F). + + + Gets the Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + The Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + + + Gets the Kannada Unicode block (U+0C81-U+0CFF). + The Kannada Unicode block (U+0C81-U+0CFF). + + + Gets the Katakana Unicode block (U+30A0-U+30FF). + The Katakana Unicode block (U+30A0-U+30FF). + + + Gets the Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + The Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + + + Gets the Kayah Li Unicode block (U+A900-U+A92F). + The Kayah Li Unicode block (U+A900-U+A92F). + + + Gets the Khmer Unicode block (U+1780-U+17FF). + The Khmer Unicode block (U+1780-U+17FF). + + + Gets the Khmer Symbols Unicode block (U+19E0-U+19FF). + The Khmer Symbols Unicode block (U+19E0-U+19FF). + + + Gets the Lao Unicode block (U+0E80-U+0EDF). + The Lao Unicode block (U+0E80-U+0EDF). + + + Gets the Latin-1 Supplement Unicode block (U+00A1-U+00FF). + The Latin-1 Supplement Unicode block (U+00A1-U+00FF). + + + Gets the Latin Extended-A Unicode block (U+0100-U+017F). + The Latin Extended-A Unicode block (U+0100-U+017F). + + + Gets the Latin Extended Additional Unicode block (U+1E00-U+1EFF). + The Latin Extended Additional Unicode block (U+1E00-U+1EFF). + + + Gets the Latin Extended-B Unicode block (U+0180-U+024F). + The Latin Extended-B Unicode block (U+0180-U+024F). + + + Gets the Latin Extended-C Unicode block (U+2C60-U+2C7F). + The Latin Extended-C Unicode block (U+2C60-U+2C7F). + + + Gets the Latin Extended-D Unicode block (U+A720-U+A7FF). + The Latin Extended-D Unicode block (U+A720-U+A7FF). + + + Gets the Latin Extended-E Unicode block (U+AB30-U+AB6F). + The Latin Extended-E Unicode block (U+AB30-U+AB6F). + + + Gets the Lepcha Unicode block (U+1C00-U+1C4F). + The Lepcha Unicode block (U+1C00-U+1C4F). + + + Gets the Letterlike Symbols Unicode block (U+2100-U+214F). + The Letterlike Symbols Unicode block (U+2100-U+214F). + + + Gets the Limbu Unicode block (U+1900-U+194F). + The Limbu Unicode block (U+1900-U+194F). + + + Gets the Lisu Unicode block (U+A4D0-U+A4FF). + The Lisu Unicode block (U+A4D0-U+A4FF). + + + Gets the Malayalam Unicode block (U+0D00-U+0D7F). + The Malayalam Unicode block (U+0D00-U+0D7F). + + + Gets the Mandaic Unicode block (U+0840-U+085F). + The Mandaic Unicode block (U+0840-U+085F). + + + Gets the Mathematical Operators Unicode block (U+2200-U+22FF). + The Mathematical Operators Unicode block (U+2200-U+22FF). + + + Gets the Meetei Mayek Unicode block (U+ABC0-U+ABFF). + The Meetei Mayek Unicode block (U+ABC0-U+ABFF). + + + Gets the Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + The Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + + + Gets the Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + The Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + + + Gets the Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + The Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + + + Gets the Miscellaneous Symbols Unicode block (U+2600-U+26FF). + The Miscellaneous Symbols Unicode block (U+2600-U+26FF). + + + Gets the Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + The Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + + + Gets the Miscellaneous Technical Unicode block (U+2300-U+23FF). + The Miscellaneous Technical Unicode block (U+2300-U+23FF). + + + Gets the Modifier Tone Letters Unicode block (U+A700-U+A71F). + The Modifier Tone Letters Unicode block (U+A700-U+A71F). + + + Gets the Mongolian Unicode block (U+1800-U+18AF). + The Mongolian Unicode block (U+1800-U+18AF). + + + Gets the Myanmar Unicode block (U+1000-U+109F). + The Myanmar Unicode block (U+1000-U+109F). + + + Gets the Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + The Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + + + Gets the Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + The Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + + + Gets the New Tai Lue Unicode block (U+1980-U+19DF). + The New Tai Lue Unicode block (U+1980-U+19DF). + + + Gets the NKo Unicode block (U+07C0-U+07FF). + The NKo Unicode block (U+07C0-U+07FF). + + + Gets an empty Unicode range. + A Unicode range with no elements. + + + Gets the Number Forms Unicode block (U+2150-U+218F). + The Number Forms Unicode block (U+2150-U+218F). + + + Gets the Ogham Unicode block (U+1680-U+169F). + The Ogham Unicode block (U+1680-U+169F). + + + Gets the Ol Chiki Unicode block (U+1C50-U+1C7F). + The Ol Chiki Unicode block (U+1C50-U+1C7F). + + + Gets the Optical Character Recognition Unicode block (U+2440-U+245F). + The Optical Character Recognition Unicode block (U+2440-U+245F). + + + Gets the Oriya Unicode block (U+0B00-U+0B7F). + The Oriya Unicode block (U+0B00-U+0B7F). + + + Gets the Phags-pa Unicode block (U+A840-U+A87F). + The Phags-pa Unicode block (U+A840-U+A87F). + + + Gets the Phonetic Extensions Unicode block (U+1D00-U+1D7F). + The Phonetic Extensions Unicode block (U+1D00-U+1D7F). + + + Gets the Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + The Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + + + Gets the Rejang Unicode block (U+A930-U+A95F). + The Rejang Unicode block (U+A930-U+A95F). + + + Gets the Runic Unicode block (U+16A0-U+16FF). + The Runic Unicode block (U+16A0-U+16FF). + + + Gets the Samaritan Unicode block (U+0800-U+083F). + The Samaritan Unicode block (U+0800-U+083F). + + + Gets the Saurashtra Unicode block (U+A880-U+A8DF). + The Saurashtra Unicode block (U+A880-U+A8DF). + + + Gets the Sinhala Unicode block (U+0D80-U+0DFF). + The Sinhala Unicode block (U+0D80-U+0DFF). + + + Gets the Small Form Variants Unicode block (U+FE50-U+FE6F). + The Small Form Variants Unicode block (U+FE50-U+FE6F). + + + Gets the Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + The Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + + + Gets the Specials Unicode block (U+FFF0-U+FFFF). + The Specials Unicode block (U+FFF0-U+FFFF). + + + Gets the Sundanese Unicode block (U+1B80-U+1BBF). + The Sundanese Unicode block (U+1B80-U+1BBF). + + + Gets the Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + The Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + + + Gets the Superscripts and Subscripts Unicode block (U+2070-U+209F). + The Superscripts and Subscripts Unicode block (U+2070-U+209F). + + + Gets the Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + The Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + + + Gets the Supplemental Arrows-B Unicode block (U+2900-U+297F). + The Supplemental Arrows-B Unicode block (U+2900-U+297F). + + + Gets the Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + The Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + + + Gets the Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + The Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + + + Gets the Syloti Nagri Unicode block (U+A800-U+A82F). + The Syloti Nagri Unicode block (U+A800-U+A82F). + + + Gets the Syriac Unicode block (U+0700-U+074F). + The Syriac Unicode block (U+0700-U+074F). + + + A corresponding to the 'Syriac Supplement' Unicode block (U+0860..U+086F). + + + Gets the Tagalog Unicode block (U+1700-U+171F). + The Tagalog Unicode block (U+1700-U+171F). + + + Gets the Tagbanwa Unicode block (U+1760-U+177F). + The Tagbanwa Unicode block (U+1760-U+177F). + + + Gets the Tai Le Unicode block (U+1950-U+197F). + The Tai Le Unicode block (U+1950-U+197F). + + + Gets the Tai Tham Unicode block (U+1A20-U+1AAF). + The Tai Tham Unicode block (U+1A20-U+1AAF). + + + Gets the Tai Viet Unicode block (U+AA80-U+AADF). + The Tai Viet Unicode block (U+AA80-U+AADF). + + + Gets the Tamil Unicode block (U+0B80-U+0BFF). + The Tamil Unicode block (U+0B82-U+0BFA). + + + Gets the Telugu Unicode block (U+0C00-U+0C7F). + The Telugu Unicode block (U+0C00-U+0C7F). + + + Gets the Thaana Unicode block (U+0780-U+07BF). + The Thaana Unicode block (U+0780-U+07BF). + + + Gets the Thai Unicode block (U+0E00-U+0E7F). + The Thai Unicode block (U+0E00-U+0E7F). + + + Gets the Tibetan Unicode block (U+0F00-U+0FFF). + The Tibetan Unicode block (U+0F00-U+0FFF). + + + Gets the Tifinagh Unicode block (U+2D30-U+2D7F). + The Tifinagh Unicode block (U+2D30-U+2D7F). + + + Gets the Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + The Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + + + Gets the Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + The Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + + + Gets the Vai Unicode block (U+A500-U+A63F). + The Vai Unicode block (U+A500-U+A63F). + + + Gets the Variation Selectors Unicode block (U+FE00-U+FE0F). + The Variation Selectors Unicode block (U+FE00-U+FE0F). + + + Gets the Vedic Extensions Unicode block (U+1CD0-U+1CFF). + The Vedic Extensions Unicode block (U+1CD0-U+1CFF). + + + Gets the Vertical Forms Unicode block (U+FE10-U+FE1F). + The Vertical Forms Unicode block (U+FE10-U+FE1F). + + + Gets the Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + The Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + + + Gets the Yi Radicals Unicode block (U+A490-U+A4CF). + The Yi Radicals Unicode block (U+A490-U+A4CF). + + + Gets the Yi Syllables Unicode block (U+A000-U+A48F). + The Yi Syllables Unicode block (U+A000-U+A48F). + + + \ No newline at end of file diff --git a/packages/System.Text.Encodings.Web.8.0.0/lib/netstandard2.0/System.Text.Encodings.Web.dll b/packages/System.Text.Encodings.Web.8.0.0/lib/netstandard2.0/System.Text.Encodings.Web.dll new file mode 100644 index 0000000..99c130d Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/lib/netstandard2.0/System.Text.Encodings.Web.dll differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/lib/netstandard2.0/System.Text.Encodings.Web.xml b/packages/System.Text.Encodings.Web.8.0.0/lib/netstandard2.0/System.Text.Encodings.Web.xml new file mode 100644 index 0000000..ecf7979 --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/lib/netstandard2.0/System.Text.Encodings.Web.xml @@ -0,0 +1,939 @@ + + + + System.Text.Encodings.Web + + + + Represents an HTML character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of the HtmlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the HtmlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a JavaScript character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of JavaScriptEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the JavaScriptEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Gets a built-in JavaScript encoder instance that is less strict about what is encoded. + A JavaScript encoder instance. + + + The base class of web encoders. + + + Initializes a new instance of the class. + + + Encodes characters from an array and writes them to a object. + The stream to which to write the encoded text. + The array of characters to encode. + The array index of the first character to encode. + The number of characters in the array to encode. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the specified string to a object. + The stream to which to write the encoded text. + The string to encode. + + + Encodes a substring and writes it to a object. + The stream to which to write the encoded text. + The string whose substring is to be encoded. + The index where the substring starts. + The number of characters in the substring. + + is . + The method failed. The encoder does not implement correctly. + + is . + + is out of range. + + is out of range. + + + Encodes the supplied characters. + A source buffer containing the characters to encode. + The destination buffer to which the encoded form of will be written. + The number of characters consumed from the buffer. + The number of characters written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + An enumeration value that describes the result of the encoding operation. + + + Encodes the supplied string and returns the encoded text as a new string. + The string to encode. + + is . + The method failed. The encoder does not implement correctly. + The encoded string. + + + Encodes the supplied UTF-8 text. + A source buffer containing the UTF-8 text to encode. + The destination buffer to which the encoded form of will be written. + The number of bytes consumed from the buffer. + The number of bytes written to the buffer. + + to indicate there is no further source data that needs to be encoded; otherwise, . + A status code that describes the result of the encoding operation. + + + Finds the index of the first character to encode. + The text buffer to search. + The number of characters in . + The index of the first character to encode. + + + Finds the first element in a UTF-8 text input buffer that would be escaped by the current encoder instance. + The UTF-8 text input buffer to search. + The index of the first element in that would be escaped by the current encoder instance, or -1 if no data in requires escaping. + + + Encodes a Unicode scalar value and writes it to a buffer. + A Unicode scalar value. + A pointer to the buffer to which to write the encoded text. + The length of the destination in characters. + When the method returns, indicates the number of characters written to the . + + if is too small to fit the encoded text; otherwise, returns . + + + Determines if a given Unicode scalar value will be encoded. + A Unicode scalar value. + + if the value will be encoded by this encoder; otherwise, returns . + + + Gets the maximum number of characters that this encoder can generate for each input code point. + The maximum number of characters. + + + Represents a filter that allows only certain Unicode code points. + + + Instantiates an empty filter (allows no code points through by default). + + + Instantiates a filter by cloning the allowed list of another object. + The other object to be cloned. + + + Instantiates a filter where only the character ranges specified by are allowed by the filter. + The allowed character ranges. + + is . + + + Allows the character specified by through the filter. + The allowed character. + + + Allows all characters specified by through the filter. + The allowed characters. + + is . + + + Allows all code points specified by . + The allowed code points. + + is . + + + Allows all characters specified by through the filter. + The range of characters to be allowed. + + is . + + + Allows all characters specified by through the filter. + The ranges of characters to be allowed. + + is . + + + Resets this object by disallowing all characters. + + + Disallows the character through the filter. + The disallowed character. + + + Disallows all characters specified by through the filter. + The disallowed characters. + + is . + + + Disallows all characters specified by through the filter. + The range of characters to be disallowed. + + is . + + + Disallows all characters specified by through the filter. + The ranges of characters to be disallowed. + + is . + + + Gets an enumerator of all allowed code points. + The enumerator of allowed code points. + + + Represents a URL character encoding. + + + Initializes a new instance of the class. + + + Creates a new instance of UrlEncoder class with the specified settings. + Settings that control how the instance encodes, primarily which characters to encode. + + is . + A new instance of the class. + + + Creates a new instance of the UrlEncoder class that specifies characters the encoder is allowed to not encode. + The set of characters that the encoder is allowed to not encode. + + is . + A new instance of the class. + + + Gets a built-in instance of the class. + A built-in instance of the class. + + + Represents a contiguous range of Unicode code points. + + + Creates a new that includes a specified number of characters starting at a specified Unicode code point. + The first code point in the range. + The number of code points in the range. + + is less than zero or greater than 0xFFFF. + +-or- + + is less than zero. + +-or- + + plus is greater than 0xFFFF. + + + Creates a new instance from a span of characters. + The first character in the range. + The last character in the range. + + precedes . + A range that includes all characters between and . + + + Gets the first code point in the range represented by this instance. + The first code point in the range. + + + Gets the number of code points in the range represented by this instance. + The number of code points in the range. + + + Provides static properties that return predefined instances that correspond to blocks from the Unicode specification. + + + Gets a range that consists of the entire Basic Multilingual Plane (BMP), from U+0000 to U+FFFF). + A range that consists of the entire BMP. + + + Gets the Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + The Alphabetic Presentation Forms Unicode block (U+FB00-U+FB4F). + + + Gets the Arabic Unicode block (U+0600-U+06FF). + The Arabic Unicode block (U+0600-U+06FF). + + + Gets the Arabic Extended-A Unicode block (U+08A0-U+08FF). + The Arabic Extended-A Unicode block (U+08A0-U+08FF). + + + A corresponding to the 'Arabic Extended-B' Unicode block (U+0870..U+089F). + + + Gets the Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + The Arabic Presentation Forms-A Unicode block (U+FB50-U+FDFF). + + + Gets the Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + The Arabic Presentation Forms-B Unicode block (U+FE70-U+FEFF). + + + Gets the Arabic Supplement Unicode block (U+0750-U+077F). + The Arabic Supplement Unicode block (U+0750-U+077F). + + + Gets the Armenian Unicode block (U+0530-U+058F). + The Armenian Unicode block (U+0530-U+058F). + + + Gets the Arrows Unicode block (U+2190-U+21FF). + The Arrows Unicode block (U+2190-U+21FF). + + + Gets the Balinese Unicode block (U+1B00-U+1B7F). + The Balinese Unicode block (U+1B00-U+1B7F). + + + Gets the Bamum Unicode block (U+A6A0-U+A6FF). + The Bamum Unicode block (U+A6A0-U+A6FF). + + + Gets the Basic Latin Unicode block (U+0021-U+007F). + The Basic Latin Unicode block (U+0021-U+007F). + + + Gets the Batak Unicode block (U+1BC0-U+1BFF). + The Batak Unicode block (U+1BC0-U+1BFF). + + + Gets the Bengali Unicode block (U+0980-U+09FF). + The Bengali Unicode block (U+0980-U+09FF). + + + Gets the Block Elements Unicode block (U+2580-U+259F). + The Block Elements Unicode block (U+2580-U+259F). + + + Gets the Bopomofo Unicode block (U+3100-U+312F). + The Bopomofo Unicode block (U+3105-U+312F). + + + Gets the Bopomofo Extended Unicode block (U+31A0-U+31BF). + The Bopomofo Extended Unicode block (U+31A0-U+31BF). + + + Gets the Box Drawing Unicode block (U+2500-U+257F). + The Box Drawing Unicode block (U+2500-U+257F). + + + Gets the Braille Patterns Unicode block (U+2800-U+28FF). + The Braille Patterns Unicode block (U+2800-U+28FF). + + + Gets the Buginese Unicode block (U+1A00-U+1A1F). + The Buginese Unicode block (U+1A00-U+1A1F). + + + Gets the Buhid Unicode block (U+1740-U+175F). + The Buhid Unicode block (U+1740-U+175F). + + + Gets the Cham Unicode block (U+AA00-U+AA5F). + The Cham Unicode block (U+AA00-U+AA5F). + + + Gets the Cherokee Unicode block (U+13A0-U+13FF). + The Cherokee Unicode block (U+13A0-U+13FF). + + + Gets the Cherokee Supplement Unicode block (U+AB70-U+ABBF). + The Cherokee Supplement Unicode block (U+AB70-U+ABBF). + + + Gets the CJK Compatibility Unicode block (U+3300-U+33FF). + The CJK Compatibility Unicode block (U+3300-U+33FF). + + + Gets the CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + The CJK Compatibility Forms Unicode block (U+FE30-U+FE4F). + + + Gets the CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + The CJK Compatibility Ideographs Unicode block (U+F900-U+FAD9). + + + Gets the CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + The CJK Radicals Supplement Unicode block (U+2E80-U+2EFF). + + + Gets the CJK Strokes Unicode block (U+31C0-U+31EF). + The CJK Strokes Unicode block (U+31C0-U+31EF). + + + Gets the CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + The CJK Symbols and Punctuation Unicode block (U+3000-U+303F). + + + Gets the CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + The CJK Unified Ideographs Unicode block (U+4E00-U+9FCC). + + + Gets the CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + The CJK Unitied Ideographs Extension A Unicode block (U+3400-U+4DB5). + + + Gets the Combining Diacritical Marks Unicode block (U+0300-U+036F). + The Combining Diacritical Marks Unicode block (U+0300-U+036F). + + + Gets the Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + The Combining Diacritical Marks Extended Unicode block (U+1AB0-U+1AFF). + + + Gets the Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + The Combining Diacritical Marks for Symbols Unicode block (U+20D0-U+20FF). + + + Gets the Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + The Combining Diacritical Marks Supplement Unicode block (U+1DC0-U+1DFF). + + + Gets the Combining Half Marks Unicode block (U+FE20-U+FE2F). + The Combining Half Marks Unicode block (U+FE20-U+FE2F). + + + Gets the Common Indic Number Forms Unicode block (U+A830-U+A83F). + The Common Indic Number Forms Unicode block (U+A830-U+A83F). + + + Gets the Control Pictures Unicode block (U+2400-U+243F). + The Control Pictures Unicode block (U+2400-U+243F). + + + Gets the Coptic Unicode block (U+2C80-U+2CFF). + The Coptic Unicode block (U+2C80-U+2CFF). + + + Gets the Currency Symbols Unicode block (U+20A0-U+20CF). + The Currency Symbols Unicode block (U+20A0-U+20CF). + + + Gets the Cyrillic Unicode block (U+0400-U+04FF). + The Cyrillic Unicode block (U+0400-U+04FF). + + + Gets the Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + The Cyrillic Extended-A Unicode block (U+2DE0-U+2DFF). + + + Gets the Cyrillic Extended-B Unicode block (U+A640-U+A69F). + The Cyrillic Extended-B Unicode block (U+A640-U+A69F). + + + A corresponding to the 'Cyrillic Extended-C' Unicode block (U+1C80..U+1C8F). + + + Gets the Cyrillic Supplement Unicode block (U+0500-U+052F). + The Cyrillic Supplement Unicode block (U+0500-U+052F). + + + Gets the Devangari Unicode block (U+0900-U+097F). + The Devangari Unicode block (U+0900-U+097F). + + + Gets the Devanagari Extended Unicode block (U+A8E0-U+A8FF). + The Devanagari Extended Unicode block (U+A8E0-U+A8FF). + + + Gets the Dingbats Unicode block (U+2700-U+27BF). + The Dingbats Unicode block (U+2700-U+27BF). + + + Gets the Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + The Enclosed Alphanumerics Unicode block (U+2460-U+24FF). + + + Gets the Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + The Enclosed CJK Letters and Months Unicode block (U+3200-U+32FF). + + + Gets the Ethiopic Unicode block (U+1200-U+137C). + The Ethiopic Unicode block (U+1200-U+137C). + + + Gets the Ethipic Extended Unicode block (U+2D80-U+2DDF). + The Ethipic Extended Unicode block (U+2D80-U+2DDF). + + + Gets the Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + The Ethiopic Extended-A Unicode block (U+AB00-U+AB2F). + + + Gets the Ethiopic Supplement Unicode block (U+1380-U+1399). + The Ethiopic Supplement Unicode block (U+1380-U+1399). + + + Gets the General Punctuation Unicode block (U+2000-U+206F). + The General Punctuation Unicode block (U+2000-U+206F). + + + Gets the Geometric Shapes Unicode block (U+25A0-U+25FF). + The Geometric Shapes Unicode block (U+25A0-U+25FF). + + + Gets the Georgian Unicode block (U+10A0-U+10FF). + The Georgian Unicode block (U+10A0-U+10FF). + + + A corresponding to the 'Georgian Extended' Unicode block (U+1C90..U+1CBF). + + + Gets the Georgian Supplement Unicode block (U+2D00-U+2D2F). + The Georgian Supplement Unicode block (U+2D00-U+2D2F). + + + Gets the Glagolitic Unicode block (U+2C00-U+2C5F). + The Glagolitic Unicode block (U+2C00-U+2C5F). + + + Gets the Greek and Coptic Unicode block (U+0370-U+03FF). + The Greek and Coptic Unicode block (U+0370-U+03FF). + + + Gets the Greek Extended Unicode block (U+1F00-U+1FFF). + The Greek Extended Unicode block (U+1F00-U+1FFF). + + + Gets the Gujarti Unicode block (U+0A81-U+0AFF). + The Gujarti Unicode block (U+0A81-U+0AFF). + + + Gets the Gurmukhi Unicode block (U+0A01-U+0A7F). + The Gurmukhi Unicode block (U+0A01-U+0A7F). + + + Gets the Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + The Halfwidth and Fullwidth Forms Unicode block (U+FF00-U+FFEE). + + + Gets the Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + The Hangul Compatibility Jamo Unicode block (U+3131-U+318F). + + + Gets the Hangul Jamo Unicode block (U+1100-U+11FF). + The Hangul Jamo Unicode block (U+1100-U+11FF). + + + Gets the Hangul Jamo Extended-A Unicode block (U+A960-U+A9F). + The Hangul Jamo Extended-A Unicode block (U+A960-U+A97F). + + + Gets the Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + The Hangul Jamo Extended-B Unicode block (U+D7B0-U+D7FF). + + + Gets the Hangul Syllables Unicode block (U+AC00-U+D7AF). + The Hangul Syllables Unicode block (U+AC00-U+D7AF). + + + Gets the Hanunoo Unicode block (U+1720-U+173F). + The Hanunoo Unicode block (U+1720-U+173F). + + + Gets the Hebrew Unicode block (U+0590-U+05FF). + The Hebrew Unicode block (U+0590-U+05FF). + + + Gets the Hiragana Unicode block (U+3040-U+309F). + The Hiragana Unicode block (U+3040-U+309F). + + + Gets the Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + The Ideographic Description Characters Unicode block (U+2FF0-U+2FFF). + + + Gets the IPA Extensions Unicode block (U+0250-U+02AF). + The IPA Extensions Unicode block (U+0250-U+02AF). + + + Gets the Javanese Unicode block (U+A980-U+A9DF). + The Javanese Unicode block (U+A980-U+A9DF). + + + Gets the Kanbun Unicode block (U+3190-U+319F). + The Kanbun Unicode block (U+3190-U+319F). + + + Gets the Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + The Kangxi Radicals Supplement Unicode block (U+2F00-U+2FDF). + + + Gets the Kannada Unicode block (U+0C81-U+0CFF). + The Kannada Unicode block (U+0C81-U+0CFF). + + + Gets the Katakana Unicode block (U+30A0-U+30FF). + The Katakana Unicode block (U+30A0-U+30FF). + + + Gets the Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + The Katakana Phonetic Extensions Unicode block (U+31F0-U+31FF). + + + Gets the Kayah Li Unicode block (U+A900-U+A92F). + The Kayah Li Unicode block (U+A900-U+A92F). + + + Gets the Khmer Unicode block (U+1780-U+17FF). + The Khmer Unicode block (U+1780-U+17FF). + + + Gets the Khmer Symbols Unicode block (U+19E0-U+19FF). + The Khmer Symbols Unicode block (U+19E0-U+19FF). + + + Gets the Lao Unicode block (U+0E80-U+0EDF). + The Lao Unicode block (U+0E80-U+0EDF). + + + Gets the Latin-1 Supplement Unicode block (U+00A1-U+00FF). + The Latin-1 Supplement Unicode block (U+00A1-U+00FF). + + + Gets the Latin Extended-A Unicode block (U+0100-U+017F). + The Latin Extended-A Unicode block (U+0100-U+017F). + + + Gets the Latin Extended Additional Unicode block (U+1E00-U+1EFF). + The Latin Extended Additional Unicode block (U+1E00-U+1EFF). + + + Gets the Latin Extended-B Unicode block (U+0180-U+024F). + The Latin Extended-B Unicode block (U+0180-U+024F). + + + Gets the Latin Extended-C Unicode block (U+2C60-U+2C7F). + The Latin Extended-C Unicode block (U+2C60-U+2C7F). + + + Gets the Latin Extended-D Unicode block (U+A720-U+A7FF). + The Latin Extended-D Unicode block (U+A720-U+A7FF). + + + Gets the Latin Extended-E Unicode block (U+AB30-U+AB6F). + The Latin Extended-E Unicode block (U+AB30-U+AB6F). + + + Gets the Lepcha Unicode block (U+1C00-U+1C4F). + The Lepcha Unicode block (U+1C00-U+1C4F). + + + Gets the Letterlike Symbols Unicode block (U+2100-U+214F). + The Letterlike Symbols Unicode block (U+2100-U+214F). + + + Gets the Limbu Unicode block (U+1900-U+194F). + The Limbu Unicode block (U+1900-U+194F). + + + Gets the Lisu Unicode block (U+A4D0-U+A4FF). + The Lisu Unicode block (U+A4D0-U+A4FF). + + + Gets the Malayalam Unicode block (U+0D00-U+0D7F). + The Malayalam Unicode block (U+0D00-U+0D7F). + + + Gets the Mandaic Unicode block (U+0840-U+085F). + The Mandaic Unicode block (U+0840-U+085F). + + + Gets the Mathematical Operators Unicode block (U+2200-U+22FF). + The Mathematical Operators Unicode block (U+2200-U+22FF). + + + Gets the Meetei Mayek Unicode block (U+ABC0-U+ABFF). + The Meetei Mayek Unicode block (U+ABC0-U+ABFF). + + + Gets the Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + The Meetei Mayek Extensions Unicode block (U+AAE0-U+AAFF). + + + Gets the Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + The Miscellaneous Mathematical Symbols-A Unicode block (U+27C0-U+27EF). + + + Gets the Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + The Miscellaneous Mathematical Symbols-B Unicode block (U+2980-U+29FF). + + + Gets the Miscellaneous Symbols Unicode block (U+2600-U+26FF). + The Miscellaneous Symbols Unicode block (U+2600-U+26FF). + + + Gets the Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + The Miscellaneous Symbols and Arrows Unicode block (U+2B00-U+2BFF). + + + Gets the Miscellaneous Technical Unicode block (U+2300-U+23FF). + The Miscellaneous Technical Unicode block (U+2300-U+23FF). + + + Gets the Modifier Tone Letters Unicode block (U+A700-U+A71F). + The Modifier Tone Letters Unicode block (U+A700-U+A71F). + + + Gets the Mongolian Unicode block (U+1800-U+18AF). + The Mongolian Unicode block (U+1800-U+18AF). + + + Gets the Myanmar Unicode block (U+1000-U+109F). + The Myanmar Unicode block (U+1000-U+109F). + + + Gets the Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + The Myanmar Extended-A Unicode block (U+AA60-U+AA7F). + + + Gets the Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + The Myanmar Extended-B Unicode block (U+A9E0-U+A9FF). + + + Gets the New Tai Lue Unicode block (U+1980-U+19DF). + The New Tai Lue Unicode block (U+1980-U+19DF). + + + Gets the NKo Unicode block (U+07C0-U+07FF). + The NKo Unicode block (U+07C0-U+07FF). + + + Gets an empty Unicode range. + A Unicode range with no elements. + + + Gets the Number Forms Unicode block (U+2150-U+218F). + The Number Forms Unicode block (U+2150-U+218F). + + + Gets the Ogham Unicode block (U+1680-U+169F). + The Ogham Unicode block (U+1680-U+169F). + + + Gets the Ol Chiki Unicode block (U+1C50-U+1C7F). + The Ol Chiki Unicode block (U+1C50-U+1C7F). + + + Gets the Optical Character Recognition Unicode block (U+2440-U+245F). + The Optical Character Recognition Unicode block (U+2440-U+245F). + + + Gets the Oriya Unicode block (U+0B00-U+0B7F). + The Oriya Unicode block (U+0B00-U+0B7F). + + + Gets the Phags-pa Unicode block (U+A840-U+A87F). + The Phags-pa Unicode block (U+A840-U+A87F). + + + Gets the Phonetic Extensions Unicode block (U+1D00-U+1D7F). + The Phonetic Extensions Unicode block (U+1D00-U+1D7F). + + + Gets the Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + The Phonetic Extensions Supplement Unicode block (U+1D80-U+1DBF). + + + Gets the Rejang Unicode block (U+A930-U+A95F). + The Rejang Unicode block (U+A930-U+A95F). + + + Gets the Runic Unicode block (U+16A0-U+16FF). + The Runic Unicode block (U+16A0-U+16FF). + + + Gets the Samaritan Unicode block (U+0800-U+083F). + The Samaritan Unicode block (U+0800-U+083F). + + + Gets the Saurashtra Unicode block (U+A880-U+A8DF). + The Saurashtra Unicode block (U+A880-U+A8DF). + + + Gets the Sinhala Unicode block (U+0D80-U+0DFF). + The Sinhala Unicode block (U+0D80-U+0DFF). + + + Gets the Small Form Variants Unicode block (U+FE50-U+FE6F). + The Small Form Variants Unicode block (U+FE50-U+FE6F). + + + Gets the Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + The Spacing Modifier Letters Unicode block (U+02B0-U+02FF). + + + Gets the Specials Unicode block (U+FFF0-U+FFFF). + The Specials Unicode block (U+FFF0-U+FFFF). + + + Gets the Sundanese Unicode block (U+1B80-U+1BBF). + The Sundanese Unicode block (U+1B80-U+1BBF). + + + Gets the Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + The Sundanese Supplement Unicode block (U+1CC0-U+1CCF). + + + Gets the Superscripts and Subscripts Unicode block (U+2070-U+209F). + The Superscripts and Subscripts Unicode block (U+2070-U+209F). + + + Gets the Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + The Supplemental Arrows-A Unicode block (U+27F0-U+27FF). + + + Gets the Supplemental Arrows-B Unicode block (U+2900-U+297F). + The Supplemental Arrows-B Unicode block (U+2900-U+297F). + + + Gets the Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + The Supplemental Mathematical Operators Unicode block (U+2A00-U+2AFF). + + + Gets the Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + The Supplemental Punctuation Unicode block (U+2E00-U+2E7F). + + + Gets the Syloti Nagri Unicode block (U+A800-U+A82F). + The Syloti Nagri Unicode block (U+A800-U+A82F). + + + Gets the Syriac Unicode block (U+0700-U+074F). + The Syriac Unicode block (U+0700-U+074F). + + + A corresponding to the 'Syriac Supplement' Unicode block (U+0860..U+086F). + + + Gets the Tagalog Unicode block (U+1700-U+171F). + The Tagalog Unicode block (U+1700-U+171F). + + + Gets the Tagbanwa Unicode block (U+1760-U+177F). + The Tagbanwa Unicode block (U+1760-U+177F). + + + Gets the Tai Le Unicode block (U+1950-U+197F). + The Tai Le Unicode block (U+1950-U+197F). + + + Gets the Tai Tham Unicode block (U+1A20-U+1AAF). + The Tai Tham Unicode block (U+1A20-U+1AAF). + + + Gets the Tai Viet Unicode block (U+AA80-U+AADF). + The Tai Viet Unicode block (U+AA80-U+AADF). + + + Gets the Tamil Unicode block (U+0B80-U+0BFF). + The Tamil Unicode block (U+0B82-U+0BFA). + + + Gets the Telugu Unicode block (U+0C00-U+0C7F). + The Telugu Unicode block (U+0C00-U+0C7F). + + + Gets the Thaana Unicode block (U+0780-U+07BF). + The Thaana Unicode block (U+0780-U+07BF). + + + Gets the Thai Unicode block (U+0E00-U+0E7F). + The Thai Unicode block (U+0E00-U+0E7F). + + + Gets the Tibetan Unicode block (U+0F00-U+0FFF). + The Tibetan Unicode block (U+0F00-U+0FFF). + + + Gets the Tifinagh Unicode block (U+2D30-U+2D7F). + The Tifinagh Unicode block (U+2D30-U+2D7F). + + + Gets the Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + The Unified Canadian Aboriginal Syllabics Unicode block (U+1400-U+167F). + + + Gets the Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + The Unified Canadian Aboriginal Syllabics Extended Unicode block (U+18B0-U+18FF). + + + Gets the Vai Unicode block (U+A500-U+A63F). + The Vai Unicode block (U+A500-U+A63F). + + + Gets the Variation Selectors Unicode block (U+FE00-U+FE0F). + The Variation Selectors Unicode block (U+FE00-U+FE0F). + + + Gets the Vedic Extensions Unicode block (U+1CD0-U+1CFF). + The Vedic Extensions Unicode block (U+1CD0-U+1CFF). + + + Gets the Vertical Forms Unicode block (U+FE10-U+FE1F). + The Vertical Forms Unicode block (U+FE10-U+FE1F). + + + Gets the Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + The Yijing Hexagram Symbols Unicode block (U+4DC0-U+4DFF). + + + Gets the Yi Radicals Unicode block (U+A490-U+A4CF). + The Yi Radicals Unicode block (U+A490-U+A4CF). + + + Gets the Yi Syllables Unicode block (U+A000-U+A48F). + The Yi Syllables Unicode block (U+A000-U+A48F). + + + \ No newline at end of file diff --git a/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net6.0/System.Text.Encodings.Web.dll b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net6.0/System.Text.Encodings.Web.dll new file mode 100644 index 0000000..132cdf4 Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net6.0/System.Text.Encodings.Web.dll differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net6.0/System.Text.Encodings.Web.xml b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net6.0/System.Text.Encodings.Web.xml new file mode 100644 index 0000000..d232598 --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net6.0/System.Text.Encodings.Web.xml @@ -0,0 +1,2018 @@ + + + + System.Text.Encodings.Web + + + + + Writes a partial string (given offset and count) to the underlying TextWriter. + + + + + A lookup map that maps individual ASCII chars to a single byte. + Storing a 0 byte indicates that no mapping exists for this input. + + + + + Returns false if is non-ASCII or if it + maps to a zero value. + + + + + A bitmap which represents all 64k codepoints in the + Basic Multilingual Plane. + + + + + Adds the given to the bitmap's allow list. + + + + + Removes the given from the bitmap's allow list. + + + + + Removes all HTML-sensitive characters from the bitmap's allow list. + + + + + Removes from the bitmap's allow list all code points which aren't mapped to defined characters + or which are otherwise always disallowed. + + + Always-disallowed categories include Cc, Cs, Co, Cn, Zs [except U+0020 SPACE], Zl, and Zp. + + + + + Queries the bitmap to see if the given is in the allow list. + + + + + Queries the bitmap to see if the given code point is in the allow list. + + + + + Allows efficient escaping for the library's built-in types (HTML, URL, JS). + Assumes the following: + (a) All C0 and C1 code points are disallowed. + (b) Escaping 1 ASCII input character results in no more than 6 output characters. + (c) All Unicode scalar values may be represented in escaped form. + (d) The escaped form of any Unicode scalar value consists of only ASCII characters. + + + + + A bitmap which represents allowed ASCII code points. + + + + + A bitmap which represents the 64-bit pre-escaped form of the ASCII code points. + A pre-escaped code point has the form [ WW 00 FF EE DD CC BB AA ], + where AA - FF are the six-ASCII-byte escaped representation of the + code point, zero-padded at the end. The high byte of the pre-escaped form + is the number of non-zero bytes which make up the pre-escaped data. + + Example: If the escaped form of "@" is "%40", the pre-escaped form will be: + 0x30_00_00_00_00_30_34_25. Iterate over the least significant bytes one-by-one + to reconstruct the escaped representation, stopping when you hit a null byte. + + + + + Given a scalar value, returns a value stating whether that value is present + in this encoder's allow list. + + + + + Contains helpers for manipulating spans so that we can keep unsafe code out of the common path. + + + + + Tries writing four bytes to the span. If success, returns true. If the span is not large + enough to hold four bytes, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing five bytes to the span. If success, returns true. If the span is not large + enough to hold five bytes, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing six bytes to the span. If success, returns true. If the span is not large + enough to hold six bytes, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing four chars to the span. If success, returns true. If the span is not large + enough to hold four chars, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing five chars to the span. If success, returns true. If the span is not large + enough to hold five chars, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing six chars to the span. If success, returns true. If the span is not large + enough to hold six chars, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing a 64-bit value as little endian to the span. If success, returns true. If + the span is not large enough to hold 8 bytes, leaves the span unchanged and returns false. + + + + + A class that can escape a scalar value and write either UTF-16 or UTF-8 format. + + + + + Represents a type used to do HTML encoding. + + + + + Returns a default built-in instance of . + + + + + Creates a new instance of HtmlEncoder with provided settings. + + Settings used to control how the created encodes, primarily which characters to encode. + A new instance of the . + + + + Creates a new instance of HtmlEncoder specifying character to be encoded. + + Set of characters that the encoder is allowed to not encode. + A new instance of the + Some characters in might still get encoded, i.e. this parameter is just telling the encoder what ranges it is allowed to not encode, not what characters it must not encode. + + + + Represents a type used to do JavaScript encoding/escaping. + + + + + Returns a default built-in instance of . + + + + + Returns a built-in instance of that is less strict about what gets encoded. + + + + Unlike the , this encoder instance does not escape HTML-sensitive characters like <, >, &, etc. and hence must be used cautiously + (for example, if the output data is within a response whose content-type is known with a charset set to UTF-8). + + + Unlike the , the quotation mark is encoded as \" rather than \u0022. + + + Unlike the (which only allows ), using this encoder instance allows to go through unescaped. + + + Unlike the , this encoder instance allows some other characters to go through unescaped (for example, '+'), and hence must be used cautiously. + + + + + + Creates a new instance of JavaScriptEncoder with provided settings. + + Settings used to control how the created encodes, primarily which characters to encode. + A new instance of the . + + + + Creates a new instance of JavaScriptEncoder specifying character to be encoded. + + Set of characters that the encoder is allowed to not encode. + A new instance of the . + Some characters in might still get encoded, i.e. this parameter is just telling the encoder what ranges it is allowed to not encode, not what characters it must not encode. + + + + An abstraction representing various text encoders. + + + TextEncoder subclasses can be used to do HTML encoding, URI encoding, and JavaScript encoding. + Instances of such subclasses can be accessed using , , and . + + + + + Encodes a Unicode scalar into a buffer. + + Unicode scalar. + The destination of the encoded text. + Length of the destination in chars. + Number of characters written to the . + Returns false if is too small to fit the encoded text, otherwise returns true. + This method is seldom called directly. One of the TextEncoder.Encode overloads should be used instead. + Implementations of need to be thread safe and stateless. + + + + + Finds index of the first character that needs to be encoded. + + The text buffer to search. + The number of characters in the . + + This method is seldom called directly. It's used by higher level helper APIs. + + + + Determines if a given Unicode scalar will be encoded. + + Unicode scalar. + Returns true if the will be encoded by this encoder, otherwise returns false. + + + + Maximum number of characters that this encoder can generate for each input character. + + + + + Encodes the supplied string and returns the encoded text as a new string. + + String to encode. + Encoded string. + + + + Encodes the supplied string into a . + + Encoded text is written to this output. + String to be encoded. + + + + Encodes a substring into a . + + Encoded text is written to this output. + String whose substring is to be encoded. + The index where the substring starts. + Number of characters in the substring. + + + + Encodes characters from an array into a . + + Encoded text is written to the output. + Array of characters to be encoded. + The index where the substring starts. + Number of characters in the substring. + + + + Encodes the supplied UTF-8 text. + + A source buffer containing the UTF-8 text to encode. + The destination buffer to which the encoded form of + will be written. + The number of bytes consumed from the buffer. + The number of bytes written to the buffer. + if there is further source data that needs to be encoded; + if there is no further source data that needs to be encoded. + An describing the result of the encoding operation. + The buffers and must not overlap. + + + + Encodes the supplied characters. + + A source buffer containing the characters to encode. + The destination buffer to which the encoded form of + will be written. + The number of characters consumed from the buffer. + The number of characters written to the buffer. + if there is further source data that needs to be encoded; + if there is no further source data that needs to be encoded. + An describing the result of the encoding operation. + The buffers and must not overlap. + + + + Given a UTF-8 text input buffer, finds the first element in the input buffer which would be + escaped by the current encoder instance. + + The UTF-8 text input buffer to search. + + The index of the first element in which would be escaped by the + current encoder instance, or -1 if no data in requires escaping. + + + + + Represents a filter which allows only certain Unicode code points through. + + + + + Instantiates an empty filter (allows no code points through by default). + + + + + Instantiates the filter by cloning the allow list of another . + + + + + Instantiates the filter where only the character ranges specified by + are allowed by the filter. + + + + + Allows the character specified by through the filter. + + + + + Allows all characters specified by through the filter. + + + + + Allows all code points specified by . + + + + + Allows all characters specified by through the filter. + + + + + Allows all characters specified by through the filter. + + + + + Resets this settings object by disallowing all characters. + + + + + Disallows the character through the filter. + + + + + Disallows all characters specified by through the filter. + + + + + Disallows all characters specified by through the filter. + + + + + Disallows all characters specified by through the filter. + + + + + Gets an enumeration of all allowed code points. + + + + + Retrieves the bitmap of allowed characters from this settings object. + The data is returned readonly byref. + + + + + Represents a type used to do URL encoding. + + + + + Returns a default built-in instance of . + + + + + Creates a new instance of UrlEncoder with provided settings. + + Settings used to control how the created encodes, primarily which characters to encode. + A new instance of the . + + + + Creates a new instance of UrlEncoder specifying character to be encoded. + + Set of characters that the encoder is allowed to not encode. + A new instance of the . + Some characters in might still get encoded, i.e. this parameter is just telling the encoder what ranges it is allowed to not encode, not what characters it must not encode. + + + + Contains helpers for dealing with Unicode code points. + + + + + The last code point defined by the Unicode specification. + + + + + Returns a bitmap of all BMP code points as a series of little-endian 32-bit values. + On other-endian architectures, caller must convert each 32-bit integer to native endianness + before using the data. + + + + + Given a Unicode scalar value, returns the UTF-8 representation of the value. + The return value's bytes should be popped from the LSB. + + + + + Determines whether the given scalar value is in the supplementary plane and thus + requires 2 characters to be represented in UTF-16 (as a surrogate pair). + + + + + Represents a contiguous range of Unicode code points. + + + Currently only the Basic Multilingual Plane is supported. + + + + + Creates a new . + + The first code point in the range. + The number of code points in the range. + + + + The first code point in this range. + + + + + The number of code points in this range. + + + + + Creates a new from a span of characters. + + The first character in the range. + The last character in the range. + The representing this span. + + + + Contains predefined instances which correspond to blocks + from the Unicode 7.0 specification. + + + + + An empty . This range contains no code points. + + + + + A which contains all characters in the Unicode Basic + Multilingual Plane (U+0000..U+FFFF). + + + + + A corresponding to the 'Basic Latin' Unicode block (U+0000..U+007F). + + + See https://www.unicode.org/charts/PDF/U0000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin-1 Supplement' Unicode block (U+0080..U+00FF). + + + See https://www.unicode.org/charts/PDF/U0080.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-A' Unicode block (U+0100..U+017F). + + + See https://www.unicode.org/charts/PDF/U0100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-B' Unicode block (U+0180..U+024F). + + + See https://www.unicode.org/charts/PDF/U0180.pdf for the full set of characters in this block. + + + + + A corresponding to the 'IPA Extensions' Unicode block (U+0250..U+02AF). + + + See https://www.unicode.org/charts/PDF/U0250.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Spacing Modifier Letters' Unicode block (U+02B0..U+02FF). + + + See https://www.unicode.org/charts/PDF/U02B0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks' Unicode block (U+0300..U+036F). + + + See https://www.unicode.org/charts/PDF/U0300.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Greek and Coptic' Unicode block (U+0370..U+03FF). + + + See https://www.unicode.org/charts/PDF/U0370.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic' Unicode block (U+0400..U+04FF). + + + See https://www.unicode.org/charts/PDF/U0400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Supplement' Unicode block (U+0500..U+052F). + + + See https://www.unicode.org/charts/PDF/U0500.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Armenian' Unicode block (U+0530..U+058F). + + + See https://www.unicode.org/charts/PDF/U0530.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hebrew' Unicode block (U+0590..U+05FF). + + + See https://www.unicode.org/charts/PDF/U0590.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic' Unicode block (U+0600..U+06FF). + + + See https://www.unicode.org/charts/PDF/U0600.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Syriac' Unicode block (U+0700..U+074F). + + + See https://www.unicode.org/charts/PDF/U0700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Supplement' Unicode block (U+0750..U+077F). + + + See https://www.unicode.org/charts/PDF/U0750.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Thaana' Unicode block (U+0780..U+07BF). + + + See https://www.unicode.org/charts/PDF/U0780.pdf for the full set of characters in this block. + + + + + A corresponding to the 'NKo' Unicode block (U+07C0..U+07FF). + + + See https://www.unicode.org/charts/PDF/U07C0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Samaritan' Unicode block (U+0800..U+083F). + + + See https://www.unicode.org/charts/PDF/U0800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Mandaic' Unicode block (U+0840..U+085F). + + + See https://www.unicode.org/charts/PDF/U0840.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Syriac Supplement' Unicode block (U+0860..U+086F). + + + See https://www.unicode.org/charts/PDF/U0860.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Extended-B' Unicode block (U+0870..U+089F). + + + See https://www.unicode.org/charts/PDF/U0870.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Extended-A' Unicode block (U+08A0..U+08FF). + + + See https://www.unicode.org/charts/PDF/U08A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Devanagari' Unicode block (U+0900..U+097F). + + + See https://www.unicode.org/charts/PDF/U0900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bengali' Unicode block (U+0980..U+09FF). + + + See https://www.unicode.org/charts/PDF/U0980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Gurmukhi' Unicode block (U+0A00..U+0A7F). + + + See https://www.unicode.org/charts/PDF/U0A00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Gujarati' Unicode block (U+0A80..U+0AFF). + + + See https://www.unicode.org/charts/PDF/U0A80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Oriya' Unicode block (U+0B00..U+0B7F). + + + See https://www.unicode.org/charts/PDF/U0B00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tamil' Unicode block (U+0B80..U+0BFF). + + + See https://www.unicode.org/charts/PDF/U0B80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Telugu' Unicode block (U+0C00..U+0C7F). + + + See https://www.unicode.org/charts/PDF/U0C00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kannada' Unicode block (U+0C80..U+0CFF). + + + See https://www.unicode.org/charts/PDF/U0C80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Malayalam' Unicode block (U+0D00..U+0D7F). + + + See https://www.unicode.org/charts/PDF/U0D00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Sinhala' Unicode block (U+0D80..U+0DFF). + + + See https://www.unicode.org/charts/PDF/U0D80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Thai' Unicode block (U+0E00..U+0E7F). + + + See https://www.unicode.org/charts/PDF/U0E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Lao' Unicode block (U+0E80..U+0EFF). + + + See https://www.unicode.org/charts/PDF/U0E80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tibetan' Unicode block (U+0F00..U+0FFF). + + + See https://www.unicode.org/charts/PDF/U0F00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Myanmar' Unicode block (U+1000..U+109F). + + + See https://www.unicode.org/charts/PDF/U1000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Georgian' Unicode block (U+10A0..U+10FF). + + + See https://www.unicode.org/charts/PDF/U10A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Jamo' Unicode block (U+1100..U+11FF). + + + See https://www.unicode.org/charts/PDF/U1100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic' Unicode block (U+1200..U+137F). + + + See https://www.unicode.org/charts/PDF/U1200.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic Supplement' Unicode block (U+1380..U+139F). + + + See https://www.unicode.org/charts/PDF/U1380.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cherokee' Unicode block (U+13A0..U+13FF). + + + See https://www.unicode.org/charts/PDF/U13A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Unified Canadian Aboriginal Syllabics' Unicode block (U+1400..U+167F). + + + See https://www.unicode.org/charts/PDF/U1400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ogham' Unicode block (U+1680..U+169F). + + + See https://www.unicode.org/charts/PDF/U1680.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Runic' Unicode block (U+16A0..U+16FF). + + + See https://www.unicode.org/charts/PDF/U16A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tagalog' Unicode block (U+1700..U+171F). + + + See https://www.unicode.org/charts/PDF/U1700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hanunoo' Unicode block (U+1720..U+173F). + + + See https://www.unicode.org/charts/PDF/U1720.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Buhid' Unicode block (U+1740..U+175F). + + + See https://www.unicode.org/charts/PDF/U1740.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tagbanwa' Unicode block (U+1760..U+177F). + + + See https://www.unicode.org/charts/PDF/U1760.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Khmer' Unicode block (U+1780..U+17FF). + + + See https://www.unicode.org/charts/PDF/U1780.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Mongolian' Unicode block (U+1800..U+18AF). + + + See https://www.unicode.org/charts/PDF/U1800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Unified Canadian Aboriginal Syllabics Extended' Unicode block (U+18B0..U+18FF). + + + See https://www.unicode.org/charts/PDF/U18B0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Limbu' Unicode block (U+1900..U+194F). + + + See https://www.unicode.org/charts/PDF/U1900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tai Le' Unicode block (U+1950..U+197F). + + + See https://www.unicode.org/charts/PDF/U1950.pdf for the full set of characters in this block. + + + + + A corresponding to the 'New Tai Lue' Unicode block (U+1980..U+19DF). + + + See https://www.unicode.org/charts/PDF/U1980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Khmer Symbols' Unicode block (U+19E0..U+19FF). + + + See https://www.unicode.org/charts/PDF/U19E0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Buginese' Unicode block (U+1A00..U+1A1F). + + + See https://www.unicode.org/charts/PDF/U1A00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tai Tham' Unicode block (U+1A20..U+1AAF). + + + See https://www.unicode.org/charts/PDF/U1A20.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks Extended' Unicode block (U+1AB0..U+1AFF). + + + See https://www.unicode.org/charts/PDF/U1AB0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Balinese' Unicode block (U+1B00..U+1B7F). + + + See https://www.unicode.org/charts/PDF/U1B00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Sundanese' Unicode block (U+1B80..U+1BBF). + + + See https://www.unicode.org/charts/PDF/U1B80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Batak' Unicode block (U+1BC0..U+1BFF). + + + See https://www.unicode.org/charts/PDF/U1BC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Lepcha' Unicode block (U+1C00..U+1C4F). + + + See https://www.unicode.org/charts/PDF/U1C00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ol Chiki' Unicode block (U+1C50..U+1C7F). + + + See https://www.unicode.org/charts/PDF/U1C50.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Extended-C' Unicode block (U+1C80..U+1C8F). + + + See https://www.unicode.org/charts/PDF/U1C80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Georgian Extended' Unicode block (U+1C90..U+1CBF). + + + See https://www.unicode.org/charts/PDF/U1C90.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Sundanese Supplement' Unicode block (U+1CC0..U+1CCF). + + + See https://www.unicode.org/charts/PDF/U1CC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Vedic Extensions' Unicode block (U+1CD0..U+1CFF). + + + See https://www.unicode.org/charts/PDF/U1CD0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Phonetic Extensions' Unicode block (U+1D00..U+1D7F). + + + See https://www.unicode.org/charts/PDF/U1D00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Phonetic Extensions Supplement' Unicode block (U+1D80..U+1DBF). + + + See https://www.unicode.org/charts/PDF/U1D80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks Supplement' Unicode block (U+1DC0..U+1DFF). + + + See https://www.unicode.org/charts/PDF/U1DC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended Additional' Unicode block (U+1E00..U+1EFF). + + + See https://www.unicode.org/charts/PDF/U1E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Greek Extended' Unicode block (U+1F00..U+1FFF). + + + See https://www.unicode.org/charts/PDF/U1F00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'General Punctuation' Unicode block (U+2000..U+206F). + + + See https://www.unicode.org/charts/PDF/U2000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Superscripts and Subscripts' Unicode block (U+2070..U+209F). + + + See https://www.unicode.org/charts/PDF/U2070.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Currency Symbols' Unicode block (U+20A0..U+20CF). + + + See https://www.unicode.org/charts/PDF/U20A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks for Symbols' Unicode block (U+20D0..U+20FF). + + + See https://www.unicode.org/charts/PDF/U20D0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Letterlike Symbols' Unicode block (U+2100..U+214F). + + + See https://www.unicode.org/charts/PDF/U2100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Number Forms' Unicode block (U+2150..U+218F). + + + See https://www.unicode.org/charts/PDF/U2150.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arrows' Unicode block (U+2190..U+21FF). + + + See https://www.unicode.org/charts/PDF/U2190.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Mathematical Operators' Unicode block (U+2200..U+22FF). + + + See https://www.unicode.org/charts/PDF/U2200.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Technical' Unicode block (U+2300..U+23FF). + + + See https://www.unicode.org/charts/PDF/U2300.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Control Pictures' Unicode block (U+2400..U+243F). + + + See https://www.unicode.org/charts/PDF/U2400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Optical Character Recognition' Unicode block (U+2440..U+245F). + + + See https://www.unicode.org/charts/PDF/U2440.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Enclosed Alphanumerics' Unicode block (U+2460..U+24FF). + + + See https://www.unicode.org/charts/PDF/U2460.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Box Drawing' Unicode block (U+2500..U+257F). + + + See https://www.unicode.org/charts/PDF/U2500.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Block Elements' Unicode block (U+2580..U+259F). + + + See https://www.unicode.org/charts/PDF/U2580.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Geometric Shapes' Unicode block (U+25A0..U+25FF). + + + See https://www.unicode.org/charts/PDF/U25A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Symbols' Unicode block (U+2600..U+26FF). + + + See https://www.unicode.org/charts/PDF/U2600.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Dingbats' Unicode block (U+2700..U+27BF). + + + See https://www.unicode.org/charts/PDF/U2700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Mathematical Symbols-A' Unicode block (U+27C0..U+27EF). + + + See https://www.unicode.org/charts/PDF/U27C0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Arrows-A' Unicode block (U+27F0..U+27FF). + + + See https://www.unicode.org/charts/PDF/U27F0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Braille Patterns' Unicode block (U+2800..U+28FF). + + + See https://www.unicode.org/charts/PDF/U2800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Arrows-B' Unicode block (U+2900..U+297F). + + + See https://www.unicode.org/charts/PDF/U2900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Mathematical Symbols-B' Unicode block (U+2980..U+29FF). + + + See https://www.unicode.org/charts/PDF/U2980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Mathematical Operators' Unicode block (U+2A00..U+2AFF). + + + See https://www.unicode.org/charts/PDF/U2A00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Symbols and Arrows' Unicode block (U+2B00..U+2BFF). + + + See https://www.unicode.org/charts/PDF/U2B00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Glagolitic' Unicode block (U+2C00..U+2C5F). + + + See https://www.unicode.org/charts/PDF/U2C00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-C' Unicode block (U+2C60..U+2C7F). + + + See https://www.unicode.org/charts/PDF/U2C60.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Coptic' Unicode block (U+2C80..U+2CFF). + + + See https://www.unicode.org/charts/PDF/U2C80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Georgian Supplement' Unicode block (U+2D00..U+2D2F). + + + See https://www.unicode.org/charts/PDF/U2D00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tifinagh' Unicode block (U+2D30..U+2D7F). + + + See https://www.unicode.org/charts/PDF/U2D30.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic Extended' Unicode block (U+2D80..U+2DDF). + + + See https://www.unicode.org/charts/PDF/U2D80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Extended-A' Unicode block (U+2DE0..U+2DFF). + + + See https://www.unicode.org/charts/PDF/U2DE0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Punctuation' Unicode block (U+2E00..U+2E7F). + + + See https://www.unicode.org/charts/PDF/U2E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Radicals Supplement' Unicode block (U+2E80..U+2EFF). + + + See https://www.unicode.org/charts/PDF/U2E80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kangxi Radicals' Unicode block (U+2F00..U+2FDF). + + + See https://www.unicode.org/charts/PDF/U2F00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ideographic Description Characters' Unicode block (U+2FF0..U+2FFF). + + + See https://www.unicode.org/charts/PDF/U2FF0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Symbols and Punctuation' Unicode block (U+3000..U+303F). + + + See https://www.unicode.org/charts/PDF/U3000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hiragana' Unicode block (U+3040..U+309F). + + + See https://www.unicode.org/charts/PDF/U3040.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Katakana' Unicode block (U+30A0..U+30FF). + + + See https://www.unicode.org/charts/PDF/U30A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bopomofo' Unicode block (U+3100..U+312F). + + + See https://www.unicode.org/charts/PDF/U3100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Compatibility Jamo' Unicode block (U+3130..U+318F). + + + See https://www.unicode.org/charts/PDF/U3130.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kanbun' Unicode block (U+3190..U+319F). + + + See https://www.unicode.org/charts/PDF/U3190.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bopomofo Extended' Unicode block (U+31A0..U+31BF). + + + See https://www.unicode.org/charts/PDF/U31A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Strokes' Unicode block (U+31C0..U+31EF). + + + See https://www.unicode.org/charts/PDF/U31C0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Katakana Phonetic Extensions' Unicode block (U+31F0..U+31FF). + + + See https://www.unicode.org/charts/PDF/U31F0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Enclosed CJK Letters and Months' Unicode block (U+3200..U+32FF). + + + See https://www.unicode.org/charts/PDF/U3200.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Compatibility' Unicode block (U+3300..U+33FF). + + + See https://www.unicode.org/charts/PDF/U3300.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Unified Ideographs Extension A' Unicode block (U+3400..U+4DBF). + + + See https://www.unicode.org/charts/PDF/U3400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Yijing Hexagram Symbols' Unicode block (U+4DC0..U+4DFF). + + + See https://www.unicode.org/charts/PDF/U4DC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Unified Ideographs' Unicode block (U+4E00..U+9FFF). + + + See https://www.unicode.org/charts/PDF/U4E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Yi Syllables' Unicode block (U+A000..U+A48F). + + + See https://www.unicode.org/charts/PDF/UA000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Yi Radicals' Unicode block (U+A490..U+A4CF). + + + See https://www.unicode.org/charts/PDF/UA490.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Lisu' Unicode block (U+A4D0..U+A4FF). + + + See https://www.unicode.org/charts/PDF/UA4D0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Vai' Unicode block (U+A500..U+A63F). + + + See https://www.unicode.org/charts/PDF/UA500.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Extended-B' Unicode block (U+A640..U+A69F). + + + See https://www.unicode.org/charts/PDF/UA640.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bamum' Unicode block (U+A6A0..U+A6FF). + + + See https://www.unicode.org/charts/PDF/UA6A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Modifier Tone Letters' Unicode block (U+A700..U+A71F). + + + See https://www.unicode.org/charts/PDF/UA700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-D' Unicode block (U+A720..U+A7FF). + + + See https://www.unicode.org/charts/PDF/UA720.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Syloti Nagri' Unicode block (U+A800..U+A82F). + + + See https://www.unicode.org/charts/PDF/UA800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Common Indic Number Forms' Unicode block (U+A830..U+A83F). + + + See https://www.unicode.org/charts/PDF/UA830.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Phags-pa' Unicode block (U+A840..U+A87F). + + + See https://www.unicode.org/charts/PDF/UA840.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Saurashtra' Unicode block (U+A880..U+A8DF). + + + See https://www.unicode.org/charts/PDF/UA880.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Devanagari Extended' Unicode block (U+A8E0..U+A8FF). + + + See https://www.unicode.org/charts/PDF/UA8E0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kayah Li' Unicode block (U+A900..U+A92F). + + + See https://www.unicode.org/charts/PDF/UA900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Rejang' Unicode block (U+A930..U+A95F). + + + See https://www.unicode.org/charts/PDF/UA930.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Jamo Extended-A' Unicode block (U+A960..U+A97F). + + + See https://www.unicode.org/charts/PDF/UA960.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Javanese' Unicode block (U+A980..U+A9DF). + + + See https://www.unicode.org/charts/PDF/UA980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Myanmar Extended-B' Unicode block (U+A9E0..U+A9FF). + + + See https://www.unicode.org/charts/PDF/UA9E0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cham' Unicode block (U+AA00..U+AA5F). + + + See https://www.unicode.org/charts/PDF/UAA00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Myanmar Extended-A' Unicode block (U+AA60..U+AA7F). + + + See https://www.unicode.org/charts/PDF/UAA60.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tai Viet' Unicode block (U+AA80..U+AADF). + + + See https://www.unicode.org/charts/PDF/UAA80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Meetei Mayek Extensions' Unicode block (U+AAE0..U+AAFF). + + + See https://www.unicode.org/charts/PDF/UAAE0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic Extended-A' Unicode block (U+AB00..U+AB2F). + + + See https://www.unicode.org/charts/PDF/UAB00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-E' Unicode block (U+AB30..U+AB6F). + + + See https://www.unicode.org/charts/PDF/UAB30.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cherokee Supplement' Unicode block (U+AB70..U+ABBF). + + + See https://www.unicode.org/charts/PDF/UAB70.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Meetei Mayek' Unicode block (U+ABC0..U+ABFF). + + + See https://www.unicode.org/charts/PDF/UABC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Syllables' Unicode block (U+AC00..U+D7AF). + + + See https://www.unicode.org/charts/PDF/UAC00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Jamo Extended-B' Unicode block (U+D7B0..U+D7FF). + + + See https://www.unicode.org/charts/PDF/UD7B0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Compatibility Ideographs' Unicode block (U+F900..U+FAFF). + + + See https://www.unicode.org/charts/PDF/UF900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Alphabetic Presentation Forms' Unicode block (U+FB00..U+FB4F). + + + See https://www.unicode.org/charts/PDF/UFB00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Presentation Forms-A' Unicode block (U+FB50..U+FDFF). + + + See https://www.unicode.org/charts/PDF/UFB50.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Variation Selectors' Unicode block (U+FE00..U+FE0F). + + + See https://www.unicode.org/charts/PDF/UFE00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Vertical Forms' Unicode block (U+FE10..U+FE1F). + + + See https://www.unicode.org/charts/PDF/UFE10.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Half Marks' Unicode block (U+FE20..U+FE2F). + + + See https://www.unicode.org/charts/PDF/UFE20.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Compatibility Forms' Unicode block (U+FE30..U+FE4F). + + + See https://www.unicode.org/charts/PDF/UFE30.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Small Form Variants' Unicode block (U+FE50..U+FE6F). + + + See https://www.unicode.org/charts/PDF/UFE50.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Presentation Forms-B' Unicode block (U+FE70..U+FEFF). + + + See https://www.unicode.org/charts/PDF/UFE70.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Halfwidth and Fullwidth Forms' Unicode block (U+FF00..U+FFEF). + + + See https://www.unicode.org/charts/PDF/UFF00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Specials' Unicode block (U+FFF0..U+FFFF). + + + See https://www.unicode.org/charts/PDF/UFFF0.pdf for the full set of characters in this block. + + + + + Formats a code point as the hex string "U+XXXX". + + + The input value doesn't have to be a real code point in the Unicode codespace. It can be any integer. + + + + + The Unicode replacement character U+FFFD. + + + + + Returns the Unicode plane (0 through 16, inclusive) which contains this code point. + + + + + Returns a Unicode scalar value from two code points representing a UTF-16 surrogate pair. + + + + + Given a Unicode scalar value, gets the number of UTF-16 code units required to represent this value. + + + + + Decomposes an astral Unicode scalar into UTF-16 high and low surrogate code units. + + + + + Given a Unicode scalar value, gets the number of UTF-8 code units required to represent this value. + + + + + Returns iff is an ASCII + character ([ U+0000..U+007F ]). + + + Per http://www.unicode.org/glossary/#ASCII, ASCII is only U+0000..U+007F. + + + + + Returns iff is in the + Basic Multilingual Plane (BMP). + + + + + Returns iff is a UTF-16 high surrogate code point, + i.e., is in [ U+D800..U+DBFF ], inclusive. + + + + + Returns iff is between + and , inclusive. + + + + + Returns iff is a UTF-16 low surrogate code point, + i.e., is in [ U+DC00..U+DFFF ], inclusive. + + + + + Returns iff is a UTF-16 surrogate code point, + i.e., is in [ U+D800..U+DFFF ], inclusive. + + + + + Returns iff is a valid Unicode code + point, i.e., is in [ U+0000..U+10FFFF ], inclusive. + + + + + Returns iff is a valid Unicode scalar + value, i.e., is in [ U+0000..U+D7FF ], inclusive; or [ U+E000..U+10FFFF ], inclusive. + + + + + Get a pinnable reference to the builder. + Does not ensure there is a null char after + This overload is pattern matched in the C# 7.3+ compiler so you can omit + the explicit method call, and write eg "fixed (char* c = builder)" + + + + + Get a pinnable reference to the builder. + + Ensures that the builder has a null char after + + + Returns the underlying storage of the builder. + + + + Returns a span around the contents of the builder. + + Ensures that the builder has a null char after + + + + Resize the internal buffer either by doubling current buffer size or + by adding to + whichever is greater. + + + Number of chars requested beyond current position. + + + + Map from an ASCII char to its hex value, e.g. arr['b'] == 11. 0xFF means it's not a hex digit. + + + TextEncoder does not implement MaxOutputCharsPerInputChar correctly. + + + + Attribute used to indicate a source generator should create a function for marshalling + arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time. + + + This attribute is meaningless if the source generator associated with it is not enabled. + The current built-in source generator only supports C# and only supplies an implementation when + applied to static, partial, non-generic methods. + + + + + Initializes a new instance of the . + + Name of the library containing the import. + + + + Gets the name of the library containing the import. + + + + + Gets or sets the name of the entry point to be called. + + + + + Gets or sets how to marshal string arguments to the method. + + + If this field is set to a value other than , + must not be specified. + + + + + Gets or sets the used to control how string arguments to the method are marshalled. + + + If this field is specified, must not be specified + or must be set to . + + + + + Gets or sets whether the callee sets an error (SetLastError on Windows or errno + on other platforms) before returning from the attributed method. + + + + + Specifies how strings should be marshalled for generated p/invokes + + + + + Indicates the user is suppling a specific marshaller in . + + + + + Use the platform-provided UTF-8 marshaller. + + + + + Use the platform-provided UTF-16 marshaller. + + + + diff --git a/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net7.0/System.Text.Encodings.Web.dll b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net7.0/System.Text.Encodings.Web.dll new file mode 100644 index 0000000..4eda309 Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net7.0/System.Text.Encodings.Web.dll differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net7.0/System.Text.Encodings.Web.xml b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net7.0/System.Text.Encodings.Web.xml new file mode 100644 index 0000000..394fbbc --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net7.0/System.Text.Encodings.Web.xml @@ -0,0 +1,1947 @@ + + + + System.Text.Encodings.Web + + + + + Writes a partial string (given offset and count) to the underlying TextWriter. + + + + + A lookup map that maps individual ASCII chars to a single byte. + Storing a 0 byte indicates that no mapping exists for this input. + + + + + Returns false if is non-ASCII or if it + maps to a zero value. + + + + + A bitmap which represents all 64k codepoints in the + Basic Multilingual Plane. + + + + + Adds the given to the bitmap's allow list. + + + + + Removes the given from the bitmap's allow list. + + + + + Removes all HTML-sensitive characters from the bitmap's allow list. + + + + + Removes from the bitmap's allow list all code points which aren't mapped to defined characters + or which are otherwise always disallowed. + + + Always-disallowed categories include Cc, Cs, Co, Cn, Zs [except U+0020 SPACE], Zl, and Zp. + + + + + Queries the bitmap to see if the given is in the allow list. + + + + + Queries the bitmap to see if the given code point is in the allow list. + + + + + Allows efficient escaping for the library's built-in types (HTML, URL, JS). + Assumes the following: + (a) All C0 and C1 code points are disallowed. + (b) Escaping 1 ASCII input character results in no more than 6 output characters. + (c) All Unicode scalar values may be represented in escaped form. + (d) The escaped form of any Unicode scalar value consists of only ASCII characters. + + + + + A bitmap which represents allowed ASCII code points. + + + + + A bitmap which represents the 64-bit pre-escaped form of the ASCII code points. + A pre-escaped code point has the form [ WW 00 FF EE DD CC BB AA ], + where AA - FF are the six-ASCII-byte escaped representation of the + code point, zero-padded at the end. The high byte of the pre-escaped form + is the number of non-zero bytes which make up the pre-escaped data. + + Example: If the escaped form of "@" is "%40", the pre-escaped form will be: + 0x30_00_00_00_00_30_34_25. Iterate over the least significant bytes one-by-one + to reconstruct the escaped representation, stopping when you hit a null byte. + + + + + Given a scalar value, returns a value stating whether that value is present + in this encoder's allow list. + + + + + Contains helpers for manipulating spans so that we can keep unsafe code out of the common path. + + + + + Tries writing four bytes to the span. If success, returns true. If the span is not large + enough to hold four bytes, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing five bytes to the span. If success, returns true. If the span is not large + enough to hold five bytes, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing six bytes to the span. If success, returns true. If the span is not large + enough to hold six bytes, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing four chars to the span. If success, returns true. If the span is not large + enough to hold four chars, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing five chars to the span. If success, returns true. If the span is not large + enough to hold five chars, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing six chars to the span. If success, returns true. If the span is not large + enough to hold six chars, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing a 64-bit value as little endian to the span. If success, returns true. If + the span is not large enough to hold 8 bytes, leaves the span unchanged and returns false. + + + + + A class that can escape a scalar value and write either UTF-16 or UTF-8 format. + + + + + Represents a type used to do HTML encoding. + + + + + Returns a default built-in instance of . + + + + + Creates a new instance of HtmlEncoder with provided settings. + + Settings used to control how the created encodes, primarily which characters to encode. + A new instance of the . + + + + Creates a new instance of HtmlEncoder specifying character to be encoded. + + Set of characters that the encoder is allowed to not encode. + A new instance of the + Some characters in might still get encoded, i.e. this parameter is just telling the encoder what ranges it is allowed to not encode, not what characters it must not encode. + + + + Represents a type used to do JavaScript encoding/escaping. + + + + + Returns a default built-in instance of . + + + + + Returns a built-in instance of that is less strict about what gets encoded. + + + + Unlike the , this encoder instance does not escape HTML-sensitive characters like <, >, &, etc. and hence must be used cautiously + (for example, if the output data is within a response whose content-type is known with a charset set to UTF-8). + + + Unlike the , the quotation mark is encoded as \" rather than \u0022. + + + Unlike the (which only allows ), using this encoder instance allows to go through unescaped. + + + Unlike the , this encoder instance allows some other characters to go through unescaped (for example, '+'), and hence must be used cautiously. + + + + + + Creates a new instance of JavaScriptEncoder with provided settings. + + Settings used to control how the created encodes, primarily which characters to encode. + A new instance of the . + + + + Creates a new instance of JavaScriptEncoder specifying character to be encoded. + + Set of characters that the encoder is allowed to not encode. + A new instance of the . + Some characters in might still get encoded, i.e. this parameter is just telling the encoder what ranges it is allowed to not encode, not what characters it must not encode. + + + + An abstraction representing various text encoders. + + + TextEncoder subclasses can be used to do HTML encoding, URI encoding, and JavaScript encoding. + Instances of such subclasses can be accessed using , , and . + + + + + Encodes a Unicode scalar into a buffer. + + Unicode scalar. + The destination of the encoded text. + Length of the destination in chars. + Number of characters written to the . + Returns false if is too small to fit the encoded text, otherwise returns true. + This method is seldom called directly. One of the TextEncoder.Encode overloads should be used instead. + Implementations of need to be thread safe and stateless. + + + + + Finds index of the first character that needs to be encoded. + + The text buffer to search. + The number of characters in the . + + This method is seldom called directly. It's used by higher level helper APIs. + + + + Determines if a given Unicode scalar will be encoded. + + Unicode scalar. + Returns true if the will be encoded by this encoder, otherwise returns false. + + + + Maximum number of characters that this encoder can generate for each input character. + + + + + Encodes the supplied string and returns the encoded text as a new string. + + String to encode. + Encoded string. + + + + Encodes the supplied string into a . + + Encoded text is written to this output. + String to be encoded. + + + + Encodes a substring into a . + + Encoded text is written to this output. + String whose substring is to be encoded. + The index where the substring starts. + Number of characters in the substring. + + + + Encodes characters from an array into a . + + Encoded text is written to the output. + Array of characters to be encoded. + The index where the substring starts. + Number of characters in the substring. + + + + Encodes the supplied UTF-8 text. + + A source buffer containing the UTF-8 text to encode. + The destination buffer to which the encoded form of + will be written. + The number of bytes consumed from the buffer. + The number of bytes written to the buffer. + if there is further source data that needs to be encoded; + if there is no further source data that needs to be encoded. + An describing the result of the encoding operation. + The buffers and must not overlap. + + + + Encodes the supplied characters. + + A source buffer containing the characters to encode. + The destination buffer to which the encoded form of + will be written. + The number of characters consumed from the buffer. + The number of characters written to the buffer. + if there is further source data that needs to be encoded; + if there is no further source data that needs to be encoded. + An describing the result of the encoding operation. + The buffers and must not overlap. + + + + Given a UTF-8 text input buffer, finds the first element in the input buffer which would be + escaped by the current encoder instance. + + The UTF-8 text input buffer to search. + + The index of the first element in which would be escaped by the + current encoder instance, or -1 if no data in requires escaping. + + + + + Represents a filter which allows only certain Unicode code points through. + + + + + Instantiates an empty filter (allows no code points through by default). + + + + + Instantiates the filter by cloning the allow list of another . + + + + + Instantiates the filter where only the character ranges specified by + are allowed by the filter. + + + + + Allows the character specified by through the filter. + + + + + Allows all characters specified by through the filter. + + + + + Allows all code points specified by . + + + + + Allows all characters specified by through the filter. + + + + + Allows all characters specified by through the filter. + + + + + Resets this settings object by disallowing all characters. + + + + + Disallows the character through the filter. + + + + + Disallows all characters specified by through the filter. + + + + + Disallows all characters specified by through the filter. + + + + + Disallows all characters specified by through the filter. + + + + + Gets an enumeration of all allowed code points. + + + + + Retrieves the bitmap of allowed characters from this settings object. + The data is returned readonly byref. + + + + + Represents a type used to do URL encoding. + + + + + Returns a default built-in instance of . + + + + + Creates a new instance of UrlEncoder with provided settings. + + Settings used to control how the created encodes, primarily which characters to encode. + A new instance of the . + + + + Creates a new instance of UrlEncoder specifying character to be encoded. + + Set of characters that the encoder is allowed to not encode. + A new instance of the . + Some characters in might still get encoded, i.e. this parameter is just telling the encoder what ranges it is allowed to not encode, not what characters it must not encode. + + + + Contains helpers for dealing with Unicode code points. + + + + + The last code point defined by the Unicode specification. + + + + + Returns a bitmap of all BMP code points as a series of little-endian 32-bit values. + On other-endian architectures, caller must convert each 32-bit integer to native endianness + before using the data. + + + + + Given a Unicode scalar value, returns the UTF-8 representation of the value. + The return value's bytes should be popped from the LSB. + + + + + Determines whether the given scalar value is in the supplementary plane and thus + requires 2 characters to be represented in UTF-16 (as a surrogate pair). + + + + + Represents a contiguous range of Unicode code points. + + + Currently only the Basic Multilingual Plane is supported. + + + + + Creates a new . + + The first code point in the range. + The number of code points in the range. + + + + The first code point in this range. + + + + + The number of code points in this range. + + + + + Creates a new from a span of characters. + + The first character in the range. + The last character in the range. + The representing this span. + + + + Contains predefined instances which correspond to blocks + from the Unicode 7.0 specification. + + + + + An empty . This range contains no code points. + + + + + A which contains all characters in the Unicode Basic + Multilingual Plane (U+0000..U+FFFF). + + + + + A corresponding to the 'Basic Latin' Unicode block (U+0000..U+007F). + + + See https://www.unicode.org/charts/PDF/U0000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin-1 Supplement' Unicode block (U+0080..U+00FF). + + + See https://www.unicode.org/charts/PDF/U0080.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-A' Unicode block (U+0100..U+017F). + + + See https://www.unicode.org/charts/PDF/U0100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-B' Unicode block (U+0180..U+024F). + + + See https://www.unicode.org/charts/PDF/U0180.pdf for the full set of characters in this block. + + + + + A corresponding to the 'IPA Extensions' Unicode block (U+0250..U+02AF). + + + See https://www.unicode.org/charts/PDF/U0250.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Spacing Modifier Letters' Unicode block (U+02B0..U+02FF). + + + See https://www.unicode.org/charts/PDF/U02B0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks' Unicode block (U+0300..U+036F). + + + See https://www.unicode.org/charts/PDF/U0300.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Greek and Coptic' Unicode block (U+0370..U+03FF). + + + See https://www.unicode.org/charts/PDF/U0370.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic' Unicode block (U+0400..U+04FF). + + + See https://www.unicode.org/charts/PDF/U0400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Supplement' Unicode block (U+0500..U+052F). + + + See https://www.unicode.org/charts/PDF/U0500.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Armenian' Unicode block (U+0530..U+058F). + + + See https://www.unicode.org/charts/PDF/U0530.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hebrew' Unicode block (U+0590..U+05FF). + + + See https://www.unicode.org/charts/PDF/U0590.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic' Unicode block (U+0600..U+06FF). + + + See https://www.unicode.org/charts/PDF/U0600.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Syriac' Unicode block (U+0700..U+074F). + + + See https://www.unicode.org/charts/PDF/U0700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Supplement' Unicode block (U+0750..U+077F). + + + See https://www.unicode.org/charts/PDF/U0750.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Thaana' Unicode block (U+0780..U+07BF). + + + See https://www.unicode.org/charts/PDF/U0780.pdf for the full set of characters in this block. + + + + + A corresponding to the 'NKo' Unicode block (U+07C0..U+07FF). + + + See https://www.unicode.org/charts/PDF/U07C0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Samaritan' Unicode block (U+0800..U+083F). + + + See https://www.unicode.org/charts/PDF/U0800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Mandaic' Unicode block (U+0840..U+085F). + + + See https://www.unicode.org/charts/PDF/U0840.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Syriac Supplement' Unicode block (U+0860..U+086F). + + + See https://www.unicode.org/charts/PDF/U0860.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Extended-B' Unicode block (U+0870..U+089F). + + + See https://www.unicode.org/charts/PDF/U0870.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Extended-A' Unicode block (U+08A0..U+08FF). + + + See https://www.unicode.org/charts/PDF/U08A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Devanagari' Unicode block (U+0900..U+097F). + + + See https://www.unicode.org/charts/PDF/U0900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bengali' Unicode block (U+0980..U+09FF). + + + See https://www.unicode.org/charts/PDF/U0980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Gurmukhi' Unicode block (U+0A00..U+0A7F). + + + See https://www.unicode.org/charts/PDF/U0A00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Gujarati' Unicode block (U+0A80..U+0AFF). + + + See https://www.unicode.org/charts/PDF/U0A80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Oriya' Unicode block (U+0B00..U+0B7F). + + + See https://www.unicode.org/charts/PDF/U0B00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tamil' Unicode block (U+0B80..U+0BFF). + + + See https://www.unicode.org/charts/PDF/U0B80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Telugu' Unicode block (U+0C00..U+0C7F). + + + See https://www.unicode.org/charts/PDF/U0C00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kannada' Unicode block (U+0C80..U+0CFF). + + + See https://www.unicode.org/charts/PDF/U0C80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Malayalam' Unicode block (U+0D00..U+0D7F). + + + See https://www.unicode.org/charts/PDF/U0D00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Sinhala' Unicode block (U+0D80..U+0DFF). + + + See https://www.unicode.org/charts/PDF/U0D80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Thai' Unicode block (U+0E00..U+0E7F). + + + See https://www.unicode.org/charts/PDF/U0E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Lao' Unicode block (U+0E80..U+0EFF). + + + See https://www.unicode.org/charts/PDF/U0E80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tibetan' Unicode block (U+0F00..U+0FFF). + + + See https://www.unicode.org/charts/PDF/U0F00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Myanmar' Unicode block (U+1000..U+109F). + + + See https://www.unicode.org/charts/PDF/U1000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Georgian' Unicode block (U+10A0..U+10FF). + + + See https://www.unicode.org/charts/PDF/U10A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Jamo' Unicode block (U+1100..U+11FF). + + + See https://www.unicode.org/charts/PDF/U1100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic' Unicode block (U+1200..U+137F). + + + See https://www.unicode.org/charts/PDF/U1200.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic Supplement' Unicode block (U+1380..U+139F). + + + See https://www.unicode.org/charts/PDF/U1380.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cherokee' Unicode block (U+13A0..U+13FF). + + + See https://www.unicode.org/charts/PDF/U13A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Unified Canadian Aboriginal Syllabics' Unicode block (U+1400..U+167F). + + + See https://www.unicode.org/charts/PDF/U1400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ogham' Unicode block (U+1680..U+169F). + + + See https://www.unicode.org/charts/PDF/U1680.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Runic' Unicode block (U+16A0..U+16FF). + + + See https://www.unicode.org/charts/PDF/U16A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tagalog' Unicode block (U+1700..U+171F). + + + See https://www.unicode.org/charts/PDF/U1700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hanunoo' Unicode block (U+1720..U+173F). + + + See https://www.unicode.org/charts/PDF/U1720.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Buhid' Unicode block (U+1740..U+175F). + + + See https://www.unicode.org/charts/PDF/U1740.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tagbanwa' Unicode block (U+1760..U+177F). + + + See https://www.unicode.org/charts/PDF/U1760.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Khmer' Unicode block (U+1780..U+17FF). + + + See https://www.unicode.org/charts/PDF/U1780.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Mongolian' Unicode block (U+1800..U+18AF). + + + See https://www.unicode.org/charts/PDF/U1800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Unified Canadian Aboriginal Syllabics Extended' Unicode block (U+18B0..U+18FF). + + + See https://www.unicode.org/charts/PDF/U18B0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Limbu' Unicode block (U+1900..U+194F). + + + See https://www.unicode.org/charts/PDF/U1900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tai Le' Unicode block (U+1950..U+197F). + + + See https://www.unicode.org/charts/PDF/U1950.pdf for the full set of characters in this block. + + + + + A corresponding to the 'New Tai Lue' Unicode block (U+1980..U+19DF). + + + See https://www.unicode.org/charts/PDF/U1980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Khmer Symbols' Unicode block (U+19E0..U+19FF). + + + See https://www.unicode.org/charts/PDF/U19E0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Buginese' Unicode block (U+1A00..U+1A1F). + + + See https://www.unicode.org/charts/PDF/U1A00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tai Tham' Unicode block (U+1A20..U+1AAF). + + + See https://www.unicode.org/charts/PDF/U1A20.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks Extended' Unicode block (U+1AB0..U+1AFF). + + + See https://www.unicode.org/charts/PDF/U1AB0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Balinese' Unicode block (U+1B00..U+1B7F). + + + See https://www.unicode.org/charts/PDF/U1B00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Sundanese' Unicode block (U+1B80..U+1BBF). + + + See https://www.unicode.org/charts/PDF/U1B80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Batak' Unicode block (U+1BC0..U+1BFF). + + + See https://www.unicode.org/charts/PDF/U1BC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Lepcha' Unicode block (U+1C00..U+1C4F). + + + See https://www.unicode.org/charts/PDF/U1C00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ol Chiki' Unicode block (U+1C50..U+1C7F). + + + See https://www.unicode.org/charts/PDF/U1C50.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Extended-C' Unicode block (U+1C80..U+1C8F). + + + See https://www.unicode.org/charts/PDF/U1C80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Georgian Extended' Unicode block (U+1C90..U+1CBF). + + + See https://www.unicode.org/charts/PDF/U1C90.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Sundanese Supplement' Unicode block (U+1CC0..U+1CCF). + + + See https://www.unicode.org/charts/PDF/U1CC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Vedic Extensions' Unicode block (U+1CD0..U+1CFF). + + + See https://www.unicode.org/charts/PDF/U1CD0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Phonetic Extensions' Unicode block (U+1D00..U+1D7F). + + + See https://www.unicode.org/charts/PDF/U1D00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Phonetic Extensions Supplement' Unicode block (U+1D80..U+1DBF). + + + See https://www.unicode.org/charts/PDF/U1D80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks Supplement' Unicode block (U+1DC0..U+1DFF). + + + See https://www.unicode.org/charts/PDF/U1DC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended Additional' Unicode block (U+1E00..U+1EFF). + + + See https://www.unicode.org/charts/PDF/U1E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Greek Extended' Unicode block (U+1F00..U+1FFF). + + + See https://www.unicode.org/charts/PDF/U1F00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'General Punctuation' Unicode block (U+2000..U+206F). + + + See https://www.unicode.org/charts/PDF/U2000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Superscripts and Subscripts' Unicode block (U+2070..U+209F). + + + See https://www.unicode.org/charts/PDF/U2070.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Currency Symbols' Unicode block (U+20A0..U+20CF). + + + See https://www.unicode.org/charts/PDF/U20A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks for Symbols' Unicode block (U+20D0..U+20FF). + + + See https://www.unicode.org/charts/PDF/U20D0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Letterlike Symbols' Unicode block (U+2100..U+214F). + + + See https://www.unicode.org/charts/PDF/U2100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Number Forms' Unicode block (U+2150..U+218F). + + + See https://www.unicode.org/charts/PDF/U2150.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arrows' Unicode block (U+2190..U+21FF). + + + See https://www.unicode.org/charts/PDF/U2190.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Mathematical Operators' Unicode block (U+2200..U+22FF). + + + See https://www.unicode.org/charts/PDF/U2200.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Technical' Unicode block (U+2300..U+23FF). + + + See https://www.unicode.org/charts/PDF/U2300.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Control Pictures' Unicode block (U+2400..U+243F). + + + See https://www.unicode.org/charts/PDF/U2400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Optical Character Recognition' Unicode block (U+2440..U+245F). + + + See https://www.unicode.org/charts/PDF/U2440.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Enclosed Alphanumerics' Unicode block (U+2460..U+24FF). + + + See https://www.unicode.org/charts/PDF/U2460.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Box Drawing' Unicode block (U+2500..U+257F). + + + See https://www.unicode.org/charts/PDF/U2500.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Block Elements' Unicode block (U+2580..U+259F). + + + See https://www.unicode.org/charts/PDF/U2580.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Geometric Shapes' Unicode block (U+25A0..U+25FF). + + + See https://www.unicode.org/charts/PDF/U25A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Symbols' Unicode block (U+2600..U+26FF). + + + See https://www.unicode.org/charts/PDF/U2600.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Dingbats' Unicode block (U+2700..U+27BF). + + + See https://www.unicode.org/charts/PDF/U2700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Mathematical Symbols-A' Unicode block (U+27C0..U+27EF). + + + See https://www.unicode.org/charts/PDF/U27C0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Arrows-A' Unicode block (U+27F0..U+27FF). + + + See https://www.unicode.org/charts/PDF/U27F0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Braille Patterns' Unicode block (U+2800..U+28FF). + + + See https://www.unicode.org/charts/PDF/U2800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Arrows-B' Unicode block (U+2900..U+297F). + + + See https://www.unicode.org/charts/PDF/U2900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Mathematical Symbols-B' Unicode block (U+2980..U+29FF). + + + See https://www.unicode.org/charts/PDF/U2980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Mathematical Operators' Unicode block (U+2A00..U+2AFF). + + + See https://www.unicode.org/charts/PDF/U2A00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Symbols and Arrows' Unicode block (U+2B00..U+2BFF). + + + See https://www.unicode.org/charts/PDF/U2B00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Glagolitic' Unicode block (U+2C00..U+2C5F). + + + See https://www.unicode.org/charts/PDF/U2C00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-C' Unicode block (U+2C60..U+2C7F). + + + See https://www.unicode.org/charts/PDF/U2C60.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Coptic' Unicode block (U+2C80..U+2CFF). + + + See https://www.unicode.org/charts/PDF/U2C80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Georgian Supplement' Unicode block (U+2D00..U+2D2F). + + + See https://www.unicode.org/charts/PDF/U2D00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tifinagh' Unicode block (U+2D30..U+2D7F). + + + See https://www.unicode.org/charts/PDF/U2D30.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic Extended' Unicode block (U+2D80..U+2DDF). + + + See https://www.unicode.org/charts/PDF/U2D80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Extended-A' Unicode block (U+2DE0..U+2DFF). + + + See https://www.unicode.org/charts/PDF/U2DE0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Punctuation' Unicode block (U+2E00..U+2E7F). + + + See https://www.unicode.org/charts/PDF/U2E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Radicals Supplement' Unicode block (U+2E80..U+2EFF). + + + See https://www.unicode.org/charts/PDF/U2E80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kangxi Radicals' Unicode block (U+2F00..U+2FDF). + + + See https://www.unicode.org/charts/PDF/U2F00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ideographic Description Characters' Unicode block (U+2FF0..U+2FFF). + + + See https://www.unicode.org/charts/PDF/U2FF0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Symbols and Punctuation' Unicode block (U+3000..U+303F). + + + See https://www.unicode.org/charts/PDF/U3000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hiragana' Unicode block (U+3040..U+309F). + + + See https://www.unicode.org/charts/PDF/U3040.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Katakana' Unicode block (U+30A0..U+30FF). + + + See https://www.unicode.org/charts/PDF/U30A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bopomofo' Unicode block (U+3100..U+312F). + + + See https://www.unicode.org/charts/PDF/U3100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Compatibility Jamo' Unicode block (U+3130..U+318F). + + + See https://www.unicode.org/charts/PDF/U3130.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kanbun' Unicode block (U+3190..U+319F). + + + See https://www.unicode.org/charts/PDF/U3190.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bopomofo Extended' Unicode block (U+31A0..U+31BF). + + + See https://www.unicode.org/charts/PDF/U31A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Strokes' Unicode block (U+31C0..U+31EF). + + + See https://www.unicode.org/charts/PDF/U31C0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Katakana Phonetic Extensions' Unicode block (U+31F0..U+31FF). + + + See https://www.unicode.org/charts/PDF/U31F0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Enclosed CJK Letters and Months' Unicode block (U+3200..U+32FF). + + + See https://www.unicode.org/charts/PDF/U3200.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Compatibility' Unicode block (U+3300..U+33FF). + + + See https://www.unicode.org/charts/PDF/U3300.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Unified Ideographs Extension A' Unicode block (U+3400..U+4DBF). + + + See https://www.unicode.org/charts/PDF/U3400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Yijing Hexagram Symbols' Unicode block (U+4DC0..U+4DFF). + + + See https://www.unicode.org/charts/PDF/U4DC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Unified Ideographs' Unicode block (U+4E00..U+9FFF). + + + See https://www.unicode.org/charts/PDF/U4E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Yi Syllables' Unicode block (U+A000..U+A48F). + + + See https://www.unicode.org/charts/PDF/UA000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Yi Radicals' Unicode block (U+A490..U+A4CF). + + + See https://www.unicode.org/charts/PDF/UA490.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Lisu' Unicode block (U+A4D0..U+A4FF). + + + See https://www.unicode.org/charts/PDF/UA4D0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Vai' Unicode block (U+A500..U+A63F). + + + See https://www.unicode.org/charts/PDF/UA500.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Extended-B' Unicode block (U+A640..U+A69F). + + + See https://www.unicode.org/charts/PDF/UA640.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bamum' Unicode block (U+A6A0..U+A6FF). + + + See https://www.unicode.org/charts/PDF/UA6A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Modifier Tone Letters' Unicode block (U+A700..U+A71F). + + + See https://www.unicode.org/charts/PDF/UA700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-D' Unicode block (U+A720..U+A7FF). + + + See https://www.unicode.org/charts/PDF/UA720.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Syloti Nagri' Unicode block (U+A800..U+A82F). + + + See https://www.unicode.org/charts/PDF/UA800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Common Indic Number Forms' Unicode block (U+A830..U+A83F). + + + See https://www.unicode.org/charts/PDF/UA830.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Phags-pa' Unicode block (U+A840..U+A87F). + + + See https://www.unicode.org/charts/PDF/UA840.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Saurashtra' Unicode block (U+A880..U+A8DF). + + + See https://www.unicode.org/charts/PDF/UA880.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Devanagari Extended' Unicode block (U+A8E0..U+A8FF). + + + See https://www.unicode.org/charts/PDF/UA8E0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kayah Li' Unicode block (U+A900..U+A92F). + + + See https://www.unicode.org/charts/PDF/UA900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Rejang' Unicode block (U+A930..U+A95F). + + + See https://www.unicode.org/charts/PDF/UA930.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Jamo Extended-A' Unicode block (U+A960..U+A97F). + + + See https://www.unicode.org/charts/PDF/UA960.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Javanese' Unicode block (U+A980..U+A9DF). + + + See https://www.unicode.org/charts/PDF/UA980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Myanmar Extended-B' Unicode block (U+A9E0..U+A9FF). + + + See https://www.unicode.org/charts/PDF/UA9E0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cham' Unicode block (U+AA00..U+AA5F). + + + See https://www.unicode.org/charts/PDF/UAA00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Myanmar Extended-A' Unicode block (U+AA60..U+AA7F). + + + See https://www.unicode.org/charts/PDF/UAA60.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tai Viet' Unicode block (U+AA80..U+AADF). + + + See https://www.unicode.org/charts/PDF/UAA80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Meetei Mayek Extensions' Unicode block (U+AAE0..U+AAFF). + + + See https://www.unicode.org/charts/PDF/UAAE0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic Extended-A' Unicode block (U+AB00..U+AB2F). + + + See https://www.unicode.org/charts/PDF/UAB00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-E' Unicode block (U+AB30..U+AB6F). + + + See https://www.unicode.org/charts/PDF/UAB30.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cherokee Supplement' Unicode block (U+AB70..U+ABBF). + + + See https://www.unicode.org/charts/PDF/UAB70.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Meetei Mayek' Unicode block (U+ABC0..U+ABFF). + + + See https://www.unicode.org/charts/PDF/UABC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Syllables' Unicode block (U+AC00..U+D7AF). + + + See https://www.unicode.org/charts/PDF/UAC00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Jamo Extended-B' Unicode block (U+D7B0..U+D7FF). + + + See https://www.unicode.org/charts/PDF/UD7B0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Compatibility Ideographs' Unicode block (U+F900..U+FAFF). + + + See https://www.unicode.org/charts/PDF/UF900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Alphabetic Presentation Forms' Unicode block (U+FB00..U+FB4F). + + + See https://www.unicode.org/charts/PDF/UFB00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Presentation Forms-A' Unicode block (U+FB50..U+FDFF). + + + See https://www.unicode.org/charts/PDF/UFB50.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Variation Selectors' Unicode block (U+FE00..U+FE0F). + + + See https://www.unicode.org/charts/PDF/UFE00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Vertical Forms' Unicode block (U+FE10..U+FE1F). + + + See https://www.unicode.org/charts/PDF/UFE10.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Half Marks' Unicode block (U+FE20..U+FE2F). + + + See https://www.unicode.org/charts/PDF/UFE20.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Compatibility Forms' Unicode block (U+FE30..U+FE4F). + + + See https://www.unicode.org/charts/PDF/UFE30.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Small Form Variants' Unicode block (U+FE50..U+FE6F). + + + See https://www.unicode.org/charts/PDF/UFE50.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Presentation Forms-B' Unicode block (U+FE70..U+FEFF). + + + See https://www.unicode.org/charts/PDF/UFE70.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Halfwidth and Fullwidth Forms' Unicode block (U+FF00..U+FFEF). + + + See https://www.unicode.org/charts/PDF/UFF00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Specials' Unicode block (U+FFF0..U+FFFF). + + + See https://www.unicode.org/charts/PDF/UFFF0.pdf for the full set of characters in this block. + + + + + Formats a code point as the hex string "U+XXXX". + + + The input value doesn't have to be a real code point in the Unicode codespace. It can be any integer. + + + + + The Unicode replacement character U+FFFD. + + + + + Returns the Unicode plane (0 through 16, inclusive) which contains this code point. + + + + + Returns a Unicode scalar value from two code points representing a UTF-16 surrogate pair. + + + + + Given a Unicode scalar value, gets the number of UTF-16 code units required to represent this value. + + + + + Decomposes an astral Unicode scalar into UTF-16 high and low surrogate code units. + + + + + Given a Unicode scalar value, gets the number of UTF-8 code units required to represent this value. + + + + + Returns iff is an ASCII + character ([ U+0000..U+007F ]). + + + Per http://www.unicode.org/glossary/#ASCII, ASCII is only U+0000..U+007F. + + + + + Returns iff is in the + Basic Multilingual Plane (BMP). + + + + + Returns iff is a UTF-16 high surrogate code point, + i.e., is in [ U+D800..U+DBFF ], inclusive. + + + + + Returns iff is between + and , inclusive. + + + + + Returns iff is a UTF-16 low surrogate code point, + i.e., is in [ U+DC00..U+DFFF ], inclusive. + + + + + Returns iff is a UTF-16 surrogate code point, + i.e., is in [ U+D800..U+DFFF ], inclusive. + + + + + Returns iff is a valid Unicode code + point, i.e., is in [ U+0000..U+10FFFF ], inclusive. + + + + + Returns iff is a valid Unicode scalar + value, i.e., is in [ U+0000..U+D7FF ], inclusive; or [ U+E000..U+10FFFF ], inclusive. + + + + + Get a pinnable reference to the builder. + Does not ensure there is a null char after + This overload is pattern matched in the C# 7.3+ compiler so you can omit + the explicit method call, and write eg "fixed (char* c = builder)" + + + + + Get a pinnable reference to the builder. + + Ensures that the builder has a null char after + + + Returns the underlying storage of the builder. + + + + Returns a span around the contents of the builder. + + Ensures that the builder has a null char after + + + + Resize the internal buffer either by doubling current buffer size or + by adding to + whichever is greater. + + + Number of chars requested beyond current position. + + + + Map from an ASCII char to its hex value, e.g. arr['b'] == 11. 0xFF means it's not a hex digit. + + + TextEncoder does not implement MaxOutputCharsPerInputChar correctly. + + + diff --git a/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll new file mode 100644 index 0000000..9a37f64 Binary files /dev/null and b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll differ diff --git a/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml new file mode 100644 index 0000000..394fbbc --- /dev/null +++ b/packages/System.Text.Encodings.Web.8.0.0/runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml @@ -0,0 +1,1947 @@ + + + + System.Text.Encodings.Web + + + + + Writes a partial string (given offset and count) to the underlying TextWriter. + + + + + A lookup map that maps individual ASCII chars to a single byte. + Storing a 0 byte indicates that no mapping exists for this input. + + + + + Returns false if is non-ASCII or if it + maps to a zero value. + + + + + A bitmap which represents all 64k codepoints in the + Basic Multilingual Plane. + + + + + Adds the given to the bitmap's allow list. + + + + + Removes the given from the bitmap's allow list. + + + + + Removes all HTML-sensitive characters from the bitmap's allow list. + + + + + Removes from the bitmap's allow list all code points which aren't mapped to defined characters + or which are otherwise always disallowed. + + + Always-disallowed categories include Cc, Cs, Co, Cn, Zs [except U+0020 SPACE], Zl, and Zp. + + + + + Queries the bitmap to see if the given is in the allow list. + + + + + Queries the bitmap to see if the given code point is in the allow list. + + + + + Allows efficient escaping for the library's built-in types (HTML, URL, JS). + Assumes the following: + (a) All C0 and C1 code points are disallowed. + (b) Escaping 1 ASCII input character results in no more than 6 output characters. + (c) All Unicode scalar values may be represented in escaped form. + (d) The escaped form of any Unicode scalar value consists of only ASCII characters. + + + + + A bitmap which represents allowed ASCII code points. + + + + + A bitmap which represents the 64-bit pre-escaped form of the ASCII code points. + A pre-escaped code point has the form [ WW 00 FF EE DD CC BB AA ], + where AA - FF are the six-ASCII-byte escaped representation of the + code point, zero-padded at the end. The high byte of the pre-escaped form + is the number of non-zero bytes which make up the pre-escaped data. + + Example: If the escaped form of "@" is "%40", the pre-escaped form will be: + 0x30_00_00_00_00_30_34_25. Iterate over the least significant bytes one-by-one + to reconstruct the escaped representation, stopping when you hit a null byte. + + + + + Given a scalar value, returns a value stating whether that value is present + in this encoder's allow list. + + + + + Contains helpers for manipulating spans so that we can keep unsafe code out of the common path. + + + + + Tries writing four bytes to the span. If success, returns true. If the span is not large + enough to hold four bytes, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing five bytes to the span. If success, returns true. If the span is not large + enough to hold five bytes, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing six bytes to the span. If success, returns true. If the span is not large + enough to hold six bytes, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing four chars to the span. If success, returns true. If the span is not large + enough to hold four chars, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing five chars to the span. If success, returns true. If the span is not large + enough to hold five chars, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing six chars to the span. If success, returns true. If the span is not large + enough to hold six chars, leaves the span unchanged and returns false. + + + Parameters are intended to be constant values. + + + + + Tries writing a 64-bit value as little endian to the span. If success, returns true. If + the span is not large enough to hold 8 bytes, leaves the span unchanged and returns false. + + + + + A class that can escape a scalar value and write either UTF-16 or UTF-8 format. + + + + + Represents a type used to do HTML encoding. + + + + + Returns a default built-in instance of . + + + + + Creates a new instance of HtmlEncoder with provided settings. + + Settings used to control how the created encodes, primarily which characters to encode. + A new instance of the . + + + + Creates a new instance of HtmlEncoder specifying character to be encoded. + + Set of characters that the encoder is allowed to not encode. + A new instance of the + Some characters in might still get encoded, i.e. this parameter is just telling the encoder what ranges it is allowed to not encode, not what characters it must not encode. + + + + Represents a type used to do JavaScript encoding/escaping. + + + + + Returns a default built-in instance of . + + + + + Returns a built-in instance of that is less strict about what gets encoded. + + + + Unlike the , this encoder instance does not escape HTML-sensitive characters like <, >, &, etc. and hence must be used cautiously + (for example, if the output data is within a response whose content-type is known with a charset set to UTF-8). + + + Unlike the , the quotation mark is encoded as \" rather than \u0022. + + + Unlike the (which only allows ), using this encoder instance allows to go through unescaped. + + + Unlike the , this encoder instance allows some other characters to go through unescaped (for example, '+'), and hence must be used cautiously. + + + + + + Creates a new instance of JavaScriptEncoder with provided settings. + + Settings used to control how the created encodes, primarily which characters to encode. + A new instance of the . + + + + Creates a new instance of JavaScriptEncoder specifying character to be encoded. + + Set of characters that the encoder is allowed to not encode. + A new instance of the . + Some characters in might still get encoded, i.e. this parameter is just telling the encoder what ranges it is allowed to not encode, not what characters it must not encode. + + + + An abstraction representing various text encoders. + + + TextEncoder subclasses can be used to do HTML encoding, URI encoding, and JavaScript encoding. + Instances of such subclasses can be accessed using , , and . + + + + + Encodes a Unicode scalar into a buffer. + + Unicode scalar. + The destination of the encoded text. + Length of the destination in chars. + Number of characters written to the . + Returns false if is too small to fit the encoded text, otherwise returns true. + This method is seldom called directly. One of the TextEncoder.Encode overloads should be used instead. + Implementations of need to be thread safe and stateless. + + + + + Finds index of the first character that needs to be encoded. + + The text buffer to search. + The number of characters in the . + + This method is seldom called directly. It's used by higher level helper APIs. + + + + Determines if a given Unicode scalar will be encoded. + + Unicode scalar. + Returns true if the will be encoded by this encoder, otherwise returns false. + + + + Maximum number of characters that this encoder can generate for each input character. + + + + + Encodes the supplied string and returns the encoded text as a new string. + + String to encode. + Encoded string. + + + + Encodes the supplied string into a . + + Encoded text is written to this output. + String to be encoded. + + + + Encodes a substring into a . + + Encoded text is written to this output. + String whose substring is to be encoded. + The index where the substring starts. + Number of characters in the substring. + + + + Encodes characters from an array into a . + + Encoded text is written to the output. + Array of characters to be encoded. + The index where the substring starts. + Number of characters in the substring. + + + + Encodes the supplied UTF-8 text. + + A source buffer containing the UTF-8 text to encode. + The destination buffer to which the encoded form of + will be written. + The number of bytes consumed from the buffer. + The number of bytes written to the buffer. + if there is further source data that needs to be encoded; + if there is no further source data that needs to be encoded. + An describing the result of the encoding operation. + The buffers and must not overlap. + + + + Encodes the supplied characters. + + A source buffer containing the characters to encode. + The destination buffer to which the encoded form of + will be written. + The number of characters consumed from the buffer. + The number of characters written to the buffer. + if there is further source data that needs to be encoded; + if there is no further source data that needs to be encoded. + An describing the result of the encoding operation. + The buffers and must not overlap. + + + + Given a UTF-8 text input buffer, finds the first element in the input buffer which would be + escaped by the current encoder instance. + + The UTF-8 text input buffer to search. + + The index of the first element in which would be escaped by the + current encoder instance, or -1 if no data in requires escaping. + + + + + Represents a filter which allows only certain Unicode code points through. + + + + + Instantiates an empty filter (allows no code points through by default). + + + + + Instantiates the filter by cloning the allow list of another . + + + + + Instantiates the filter where only the character ranges specified by + are allowed by the filter. + + + + + Allows the character specified by through the filter. + + + + + Allows all characters specified by through the filter. + + + + + Allows all code points specified by . + + + + + Allows all characters specified by through the filter. + + + + + Allows all characters specified by through the filter. + + + + + Resets this settings object by disallowing all characters. + + + + + Disallows the character through the filter. + + + + + Disallows all characters specified by through the filter. + + + + + Disallows all characters specified by through the filter. + + + + + Disallows all characters specified by through the filter. + + + + + Gets an enumeration of all allowed code points. + + + + + Retrieves the bitmap of allowed characters from this settings object. + The data is returned readonly byref. + + + + + Represents a type used to do URL encoding. + + + + + Returns a default built-in instance of . + + + + + Creates a new instance of UrlEncoder with provided settings. + + Settings used to control how the created encodes, primarily which characters to encode. + A new instance of the . + + + + Creates a new instance of UrlEncoder specifying character to be encoded. + + Set of characters that the encoder is allowed to not encode. + A new instance of the . + Some characters in might still get encoded, i.e. this parameter is just telling the encoder what ranges it is allowed to not encode, not what characters it must not encode. + + + + Contains helpers for dealing with Unicode code points. + + + + + The last code point defined by the Unicode specification. + + + + + Returns a bitmap of all BMP code points as a series of little-endian 32-bit values. + On other-endian architectures, caller must convert each 32-bit integer to native endianness + before using the data. + + + + + Given a Unicode scalar value, returns the UTF-8 representation of the value. + The return value's bytes should be popped from the LSB. + + + + + Determines whether the given scalar value is in the supplementary plane and thus + requires 2 characters to be represented in UTF-16 (as a surrogate pair). + + + + + Represents a contiguous range of Unicode code points. + + + Currently only the Basic Multilingual Plane is supported. + + + + + Creates a new . + + The first code point in the range. + The number of code points in the range. + + + + The first code point in this range. + + + + + The number of code points in this range. + + + + + Creates a new from a span of characters. + + The first character in the range. + The last character in the range. + The representing this span. + + + + Contains predefined instances which correspond to blocks + from the Unicode 7.0 specification. + + + + + An empty . This range contains no code points. + + + + + A which contains all characters in the Unicode Basic + Multilingual Plane (U+0000..U+FFFF). + + + + + A corresponding to the 'Basic Latin' Unicode block (U+0000..U+007F). + + + See https://www.unicode.org/charts/PDF/U0000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin-1 Supplement' Unicode block (U+0080..U+00FF). + + + See https://www.unicode.org/charts/PDF/U0080.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-A' Unicode block (U+0100..U+017F). + + + See https://www.unicode.org/charts/PDF/U0100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-B' Unicode block (U+0180..U+024F). + + + See https://www.unicode.org/charts/PDF/U0180.pdf for the full set of characters in this block. + + + + + A corresponding to the 'IPA Extensions' Unicode block (U+0250..U+02AF). + + + See https://www.unicode.org/charts/PDF/U0250.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Spacing Modifier Letters' Unicode block (U+02B0..U+02FF). + + + See https://www.unicode.org/charts/PDF/U02B0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks' Unicode block (U+0300..U+036F). + + + See https://www.unicode.org/charts/PDF/U0300.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Greek and Coptic' Unicode block (U+0370..U+03FF). + + + See https://www.unicode.org/charts/PDF/U0370.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic' Unicode block (U+0400..U+04FF). + + + See https://www.unicode.org/charts/PDF/U0400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Supplement' Unicode block (U+0500..U+052F). + + + See https://www.unicode.org/charts/PDF/U0500.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Armenian' Unicode block (U+0530..U+058F). + + + See https://www.unicode.org/charts/PDF/U0530.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hebrew' Unicode block (U+0590..U+05FF). + + + See https://www.unicode.org/charts/PDF/U0590.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic' Unicode block (U+0600..U+06FF). + + + See https://www.unicode.org/charts/PDF/U0600.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Syriac' Unicode block (U+0700..U+074F). + + + See https://www.unicode.org/charts/PDF/U0700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Supplement' Unicode block (U+0750..U+077F). + + + See https://www.unicode.org/charts/PDF/U0750.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Thaana' Unicode block (U+0780..U+07BF). + + + See https://www.unicode.org/charts/PDF/U0780.pdf for the full set of characters in this block. + + + + + A corresponding to the 'NKo' Unicode block (U+07C0..U+07FF). + + + See https://www.unicode.org/charts/PDF/U07C0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Samaritan' Unicode block (U+0800..U+083F). + + + See https://www.unicode.org/charts/PDF/U0800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Mandaic' Unicode block (U+0840..U+085F). + + + See https://www.unicode.org/charts/PDF/U0840.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Syriac Supplement' Unicode block (U+0860..U+086F). + + + See https://www.unicode.org/charts/PDF/U0860.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Extended-B' Unicode block (U+0870..U+089F). + + + See https://www.unicode.org/charts/PDF/U0870.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Extended-A' Unicode block (U+08A0..U+08FF). + + + See https://www.unicode.org/charts/PDF/U08A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Devanagari' Unicode block (U+0900..U+097F). + + + See https://www.unicode.org/charts/PDF/U0900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bengali' Unicode block (U+0980..U+09FF). + + + See https://www.unicode.org/charts/PDF/U0980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Gurmukhi' Unicode block (U+0A00..U+0A7F). + + + See https://www.unicode.org/charts/PDF/U0A00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Gujarati' Unicode block (U+0A80..U+0AFF). + + + See https://www.unicode.org/charts/PDF/U0A80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Oriya' Unicode block (U+0B00..U+0B7F). + + + See https://www.unicode.org/charts/PDF/U0B00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tamil' Unicode block (U+0B80..U+0BFF). + + + See https://www.unicode.org/charts/PDF/U0B80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Telugu' Unicode block (U+0C00..U+0C7F). + + + See https://www.unicode.org/charts/PDF/U0C00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kannada' Unicode block (U+0C80..U+0CFF). + + + See https://www.unicode.org/charts/PDF/U0C80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Malayalam' Unicode block (U+0D00..U+0D7F). + + + See https://www.unicode.org/charts/PDF/U0D00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Sinhala' Unicode block (U+0D80..U+0DFF). + + + See https://www.unicode.org/charts/PDF/U0D80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Thai' Unicode block (U+0E00..U+0E7F). + + + See https://www.unicode.org/charts/PDF/U0E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Lao' Unicode block (U+0E80..U+0EFF). + + + See https://www.unicode.org/charts/PDF/U0E80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tibetan' Unicode block (U+0F00..U+0FFF). + + + See https://www.unicode.org/charts/PDF/U0F00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Myanmar' Unicode block (U+1000..U+109F). + + + See https://www.unicode.org/charts/PDF/U1000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Georgian' Unicode block (U+10A0..U+10FF). + + + See https://www.unicode.org/charts/PDF/U10A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Jamo' Unicode block (U+1100..U+11FF). + + + See https://www.unicode.org/charts/PDF/U1100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic' Unicode block (U+1200..U+137F). + + + See https://www.unicode.org/charts/PDF/U1200.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic Supplement' Unicode block (U+1380..U+139F). + + + See https://www.unicode.org/charts/PDF/U1380.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cherokee' Unicode block (U+13A0..U+13FF). + + + See https://www.unicode.org/charts/PDF/U13A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Unified Canadian Aboriginal Syllabics' Unicode block (U+1400..U+167F). + + + See https://www.unicode.org/charts/PDF/U1400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ogham' Unicode block (U+1680..U+169F). + + + See https://www.unicode.org/charts/PDF/U1680.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Runic' Unicode block (U+16A0..U+16FF). + + + See https://www.unicode.org/charts/PDF/U16A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tagalog' Unicode block (U+1700..U+171F). + + + See https://www.unicode.org/charts/PDF/U1700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hanunoo' Unicode block (U+1720..U+173F). + + + See https://www.unicode.org/charts/PDF/U1720.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Buhid' Unicode block (U+1740..U+175F). + + + See https://www.unicode.org/charts/PDF/U1740.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tagbanwa' Unicode block (U+1760..U+177F). + + + See https://www.unicode.org/charts/PDF/U1760.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Khmer' Unicode block (U+1780..U+17FF). + + + See https://www.unicode.org/charts/PDF/U1780.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Mongolian' Unicode block (U+1800..U+18AF). + + + See https://www.unicode.org/charts/PDF/U1800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Unified Canadian Aboriginal Syllabics Extended' Unicode block (U+18B0..U+18FF). + + + See https://www.unicode.org/charts/PDF/U18B0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Limbu' Unicode block (U+1900..U+194F). + + + See https://www.unicode.org/charts/PDF/U1900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tai Le' Unicode block (U+1950..U+197F). + + + See https://www.unicode.org/charts/PDF/U1950.pdf for the full set of characters in this block. + + + + + A corresponding to the 'New Tai Lue' Unicode block (U+1980..U+19DF). + + + See https://www.unicode.org/charts/PDF/U1980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Khmer Symbols' Unicode block (U+19E0..U+19FF). + + + See https://www.unicode.org/charts/PDF/U19E0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Buginese' Unicode block (U+1A00..U+1A1F). + + + See https://www.unicode.org/charts/PDF/U1A00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tai Tham' Unicode block (U+1A20..U+1AAF). + + + See https://www.unicode.org/charts/PDF/U1A20.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks Extended' Unicode block (U+1AB0..U+1AFF). + + + See https://www.unicode.org/charts/PDF/U1AB0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Balinese' Unicode block (U+1B00..U+1B7F). + + + See https://www.unicode.org/charts/PDF/U1B00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Sundanese' Unicode block (U+1B80..U+1BBF). + + + See https://www.unicode.org/charts/PDF/U1B80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Batak' Unicode block (U+1BC0..U+1BFF). + + + See https://www.unicode.org/charts/PDF/U1BC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Lepcha' Unicode block (U+1C00..U+1C4F). + + + See https://www.unicode.org/charts/PDF/U1C00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ol Chiki' Unicode block (U+1C50..U+1C7F). + + + See https://www.unicode.org/charts/PDF/U1C50.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Extended-C' Unicode block (U+1C80..U+1C8F). + + + See https://www.unicode.org/charts/PDF/U1C80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Georgian Extended' Unicode block (U+1C90..U+1CBF). + + + See https://www.unicode.org/charts/PDF/U1C90.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Sundanese Supplement' Unicode block (U+1CC0..U+1CCF). + + + See https://www.unicode.org/charts/PDF/U1CC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Vedic Extensions' Unicode block (U+1CD0..U+1CFF). + + + See https://www.unicode.org/charts/PDF/U1CD0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Phonetic Extensions' Unicode block (U+1D00..U+1D7F). + + + See https://www.unicode.org/charts/PDF/U1D00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Phonetic Extensions Supplement' Unicode block (U+1D80..U+1DBF). + + + See https://www.unicode.org/charts/PDF/U1D80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks Supplement' Unicode block (U+1DC0..U+1DFF). + + + See https://www.unicode.org/charts/PDF/U1DC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended Additional' Unicode block (U+1E00..U+1EFF). + + + See https://www.unicode.org/charts/PDF/U1E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Greek Extended' Unicode block (U+1F00..U+1FFF). + + + See https://www.unicode.org/charts/PDF/U1F00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'General Punctuation' Unicode block (U+2000..U+206F). + + + See https://www.unicode.org/charts/PDF/U2000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Superscripts and Subscripts' Unicode block (U+2070..U+209F). + + + See https://www.unicode.org/charts/PDF/U2070.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Currency Symbols' Unicode block (U+20A0..U+20CF). + + + See https://www.unicode.org/charts/PDF/U20A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Diacritical Marks for Symbols' Unicode block (U+20D0..U+20FF). + + + See https://www.unicode.org/charts/PDF/U20D0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Letterlike Symbols' Unicode block (U+2100..U+214F). + + + See https://www.unicode.org/charts/PDF/U2100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Number Forms' Unicode block (U+2150..U+218F). + + + See https://www.unicode.org/charts/PDF/U2150.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arrows' Unicode block (U+2190..U+21FF). + + + See https://www.unicode.org/charts/PDF/U2190.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Mathematical Operators' Unicode block (U+2200..U+22FF). + + + See https://www.unicode.org/charts/PDF/U2200.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Technical' Unicode block (U+2300..U+23FF). + + + See https://www.unicode.org/charts/PDF/U2300.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Control Pictures' Unicode block (U+2400..U+243F). + + + See https://www.unicode.org/charts/PDF/U2400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Optical Character Recognition' Unicode block (U+2440..U+245F). + + + See https://www.unicode.org/charts/PDF/U2440.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Enclosed Alphanumerics' Unicode block (U+2460..U+24FF). + + + See https://www.unicode.org/charts/PDF/U2460.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Box Drawing' Unicode block (U+2500..U+257F). + + + See https://www.unicode.org/charts/PDF/U2500.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Block Elements' Unicode block (U+2580..U+259F). + + + See https://www.unicode.org/charts/PDF/U2580.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Geometric Shapes' Unicode block (U+25A0..U+25FF). + + + See https://www.unicode.org/charts/PDF/U25A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Symbols' Unicode block (U+2600..U+26FF). + + + See https://www.unicode.org/charts/PDF/U2600.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Dingbats' Unicode block (U+2700..U+27BF). + + + See https://www.unicode.org/charts/PDF/U2700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Mathematical Symbols-A' Unicode block (U+27C0..U+27EF). + + + See https://www.unicode.org/charts/PDF/U27C0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Arrows-A' Unicode block (U+27F0..U+27FF). + + + See https://www.unicode.org/charts/PDF/U27F0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Braille Patterns' Unicode block (U+2800..U+28FF). + + + See https://www.unicode.org/charts/PDF/U2800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Arrows-B' Unicode block (U+2900..U+297F). + + + See https://www.unicode.org/charts/PDF/U2900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Mathematical Symbols-B' Unicode block (U+2980..U+29FF). + + + See https://www.unicode.org/charts/PDF/U2980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Mathematical Operators' Unicode block (U+2A00..U+2AFF). + + + See https://www.unicode.org/charts/PDF/U2A00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Miscellaneous Symbols and Arrows' Unicode block (U+2B00..U+2BFF). + + + See https://www.unicode.org/charts/PDF/U2B00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Glagolitic' Unicode block (U+2C00..U+2C5F). + + + See https://www.unicode.org/charts/PDF/U2C00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-C' Unicode block (U+2C60..U+2C7F). + + + See https://www.unicode.org/charts/PDF/U2C60.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Coptic' Unicode block (U+2C80..U+2CFF). + + + See https://www.unicode.org/charts/PDF/U2C80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Georgian Supplement' Unicode block (U+2D00..U+2D2F). + + + See https://www.unicode.org/charts/PDF/U2D00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tifinagh' Unicode block (U+2D30..U+2D7F). + + + See https://www.unicode.org/charts/PDF/U2D30.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic Extended' Unicode block (U+2D80..U+2DDF). + + + See https://www.unicode.org/charts/PDF/U2D80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Extended-A' Unicode block (U+2DE0..U+2DFF). + + + See https://www.unicode.org/charts/PDF/U2DE0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Supplemental Punctuation' Unicode block (U+2E00..U+2E7F). + + + See https://www.unicode.org/charts/PDF/U2E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Radicals Supplement' Unicode block (U+2E80..U+2EFF). + + + See https://www.unicode.org/charts/PDF/U2E80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kangxi Radicals' Unicode block (U+2F00..U+2FDF). + + + See https://www.unicode.org/charts/PDF/U2F00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ideographic Description Characters' Unicode block (U+2FF0..U+2FFF). + + + See https://www.unicode.org/charts/PDF/U2FF0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Symbols and Punctuation' Unicode block (U+3000..U+303F). + + + See https://www.unicode.org/charts/PDF/U3000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hiragana' Unicode block (U+3040..U+309F). + + + See https://www.unicode.org/charts/PDF/U3040.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Katakana' Unicode block (U+30A0..U+30FF). + + + See https://www.unicode.org/charts/PDF/U30A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bopomofo' Unicode block (U+3100..U+312F). + + + See https://www.unicode.org/charts/PDF/U3100.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Compatibility Jamo' Unicode block (U+3130..U+318F). + + + See https://www.unicode.org/charts/PDF/U3130.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kanbun' Unicode block (U+3190..U+319F). + + + See https://www.unicode.org/charts/PDF/U3190.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bopomofo Extended' Unicode block (U+31A0..U+31BF). + + + See https://www.unicode.org/charts/PDF/U31A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Strokes' Unicode block (U+31C0..U+31EF). + + + See https://www.unicode.org/charts/PDF/U31C0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Katakana Phonetic Extensions' Unicode block (U+31F0..U+31FF). + + + See https://www.unicode.org/charts/PDF/U31F0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Enclosed CJK Letters and Months' Unicode block (U+3200..U+32FF). + + + See https://www.unicode.org/charts/PDF/U3200.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Compatibility' Unicode block (U+3300..U+33FF). + + + See https://www.unicode.org/charts/PDF/U3300.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Unified Ideographs Extension A' Unicode block (U+3400..U+4DBF). + + + See https://www.unicode.org/charts/PDF/U3400.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Yijing Hexagram Symbols' Unicode block (U+4DC0..U+4DFF). + + + See https://www.unicode.org/charts/PDF/U4DC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Unified Ideographs' Unicode block (U+4E00..U+9FFF). + + + See https://www.unicode.org/charts/PDF/U4E00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Yi Syllables' Unicode block (U+A000..U+A48F). + + + See https://www.unicode.org/charts/PDF/UA000.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Yi Radicals' Unicode block (U+A490..U+A4CF). + + + See https://www.unicode.org/charts/PDF/UA490.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Lisu' Unicode block (U+A4D0..U+A4FF). + + + See https://www.unicode.org/charts/PDF/UA4D0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Vai' Unicode block (U+A500..U+A63F). + + + See https://www.unicode.org/charts/PDF/UA500.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cyrillic Extended-B' Unicode block (U+A640..U+A69F). + + + See https://www.unicode.org/charts/PDF/UA640.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Bamum' Unicode block (U+A6A0..U+A6FF). + + + See https://www.unicode.org/charts/PDF/UA6A0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Modifier Tone Letters' Unicode block (U+A700..U+A71F). + + + See https://www.unicode.org/charts/PDF/UA700.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-D' Unicode block (U+A720..U+A7FF). + + + See https://www.unicode.org/charts/PDF/UA720.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Syloti Nagri' Unicode block (U+A800..U+A82F). + + + See https://www.unicode.org/charts/PDF/UA800.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Common Indic Number Forms' Unicode block (U+A830..U+A83F). + + + See https://www.unicode.org/charts/PDF/UA830.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Phags-pa' Unicode block (U+A840..U+A87F). + + + See https://www.unicode.org/charts/PDF/UA840.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Saurashtra' Unicode block (U+A880..U+A8DF). + + + See https://www.unicode.org/charts/PDF/UA880.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Devanagari Extended' Unicode block (U+A8E0..U+A8FF). + + + See https://www.unicode.org/charts/PDF/UA8E0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Kayah Li' Unicode block (U+A900..U+A92F). + + + See https://www.unicode.org/charts/PDF/UA900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Rejang' Unicode block (U+A930..U+A95F). + + + See https://www.unicode.org/charts/PDF/UA930.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Jamo Extended-A' Unicode block (U+A960..U+A97F). + + + See https://www.unicode.org/charts/PDF/UA960.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Javanese' Unicode block (U+A980..U+A9DF). + + + See https://www.unicode.org/charts/PDF/UA980.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Myanmar Extended-B' Unicode block (U+A9E0..U+A9FF). + + + See https://www.unicode.org/charts/PDF/UA9E0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cham' Unicode block (U+AA00..U+AA5F). + + + See https://www.unicode.org/charts/PDF/UAA00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Myanmar Extended-A' Unicode block (U+AA60..U+AA7F). + + + See https://www.unicode.org/charts/PDF/UAA60.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Tai Viet' Unicode block (U+AA80..U+AADF). + + + See https://www.unicode.org/charts/PDF/UAA80.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Meetei Mayek Extensions' Unicode block (U+AAE0..U+AAFF). + + + See https://www.unicode.org/charts/PDF/UAAE0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Ethiopic Extended-A' Unicode block (U+AB00..U+AB2F). + + + See https://www.unicode.org/charts/PDF/UAB00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Latin Extended-E' Unicode block (U+AB30..U+AB6F). + + + See https://www.unicode.org/charts/PDF/UAB30.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Cherokee Supplement' Unicode block (U+AB70..U+ABBF). + + + See https://www.unicode.org/charts/PDF/UAB70.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Meetei Mayek' Unicode block (U+ABC0..U+ABFF). + + + See https://www.unicode.org/charts/PDF/UABC0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Syllables' Unicode block (U+AC00..U+D7AF). + + + See https://www.unicode.org/charts/PDF/UAC00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Hangul Jamo Extended-B' Unicode block (U+D7B0..U+D7FF). + + + See https://www.unicode.org/charts/PDF/UD7B0.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Compatibility Ideographs' Unicode block (U+F900..U+FAFF). + + + See https://www.unicode.org/charts/PDF/UF900.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Alphabetic Presentation Forms' Unicode block (U+FB00..U+FB4F). + + + See https://www.unicode.org/charts/PDF/UFB00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Presentation Forms-A' Unicode block (U+FB50..U+FDFF). + + + See https://www.unicode.org/charts/PDF/UFB50.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Variation Selectors' Unicode block (U+FE00..U+FE0F). + + + See https://www.unicode.org/charts/PDF/UFE00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Vertical Forms' Unicode block (U+FE10..U+FE1F). + + + See https://www.unicode.org/charts/PDF/UFE10.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Combining Half Marks' Unicode block (U+FE20..U+FE2F). + + + See https://www.unicode.org/charts/PDF/UFE20.pdf for the full set of characters in this block. + + + + + A corresponding to the 'CJK Compatibility Forms' Unicode block (U+FE30..U+FE4F). + + + See https://www.unicode.org/charts/PDF/UFE30.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Small Form Variants' Unicode block (U+FE50..U+FE6F). + + + See https://www.unicode.org/charts/PDF/UFE50.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Arabic Presentation Forms-B' Unicode block (U+FE70..U+FEFF). + + + See https://www.unicode.org/charts/PDF/UFE70.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Halfwidth and Fullwidth Forms' Unicode block (U+FF00..U+FFEF). + + + See https://www.unicode.org/charts/PDF/UFF00.pdf for the full set of characters in this block. + + + + + A corresponding to the 'Specials' Unicode block (U+FFF0..U+FFFF). + + + See https://www.unicode.org/charts/PDF/UFFF0.pdf for the full set of characters in this block. + + + + + Formats a code point as the hex string "U+XXXX". + + + The input value doesn't have to be a real code point in the Unicode codespace. It can be any integer. + + + + + The Unicode replacement character U+FFFD. + + + + + Returns the Unicode plane (0 through 16, inclusive) which contains this code point. + + + + + Returns a Unicode scalar value from two code points representing a UTF-16 surrogate pair. + + + + + Given a Unicode scalar value, gets the number of UTF-16 code units required to represent this value. + + + + + Decomposes an astral Unicode scalar into UTF-16 high and low surrogate code units. + + + + + Given a Unicode scalar value, gets the number of UTF-8 code units required to represent this value. + + + + + Returns iff is an ASCII + character ([ U+0000..U+007F ]). + + + Per http://www.unicode.org/glossary/#ASCII, ASCII is only U+0000..U+007F. + + + + + Returns iff is in the + Basic Multilingual Plane (BMP). + + + + + Returns iff is a UTF-16 high surrogate code point, + i.e., is in [ U+D800..U+DBFF ], inclusive. + + + + + Returns iff is between + and , inclusive. + + + + + Returns iff is a UTF-16 low surrogate code point, + i.e., is in [ U+DC00..U+DFFF ], inclusive. + + + + + Returns iff is a UTF-16 surrogate code point, + i.e., is in [ U+D800..U+DFFF ], inclusive. + + + + + Returns iff is a valid Unicode code + point, i.e., is in [ U+0000..U+10FFFF ], inclusive. + + + + + Returns iff is a valid Unicode scalar + value, i.e., is in [ U+0000..U+D7FF ], inclusive; or [ U+E000..U+10FFFF ], inclusive. + + + + + Get a pinnable reference to the builder. + Does not ensure there is a null char after + This overload is pattern matched in the C# 7.3+ compiler so you can omit + the explicit method call, and write eg "fixed (char* c = builder)" + + + + + Get a pinnable reference to the builder. + + Ensures that the builder has a null char after + + + Returns the underlying storage of the builder. + + + + Returns a span around the contents of the builder. + + Ensures that the builder has a null char after + + + + Resize the internal buffer either by doubling current buffer size or + by adding to + whichever is greater. + + + Number of chars requested beyond current position. + + + + Map from an ASCII char to its hex value, e.g. arr['b'] == 11. 0xFF means it's not a hex digit. + + + TextEncoder does not implement MaxOutputCharsPerInputChar correctly. + + + diff --git a/packages/System.Text.Encodings.Web.8.0.0/useSharedDesignerContext.txt b/packages/System.Text.Encodings.Web.8.0.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Text.Json.8.0.0/.signature.p7s b/packages/System.Text.Json.8.0.0/.signature.p7s new file mode 100644 index 0000000..467c47e Binary files /dev/null and b/packages/System.Text.Json.8.0.0/.signature.p7s differ diff --git a/packages/System.Text.Json.8.0.0/Icon.png b/packages/System.Text.Json.8.0.0/Icon.png new file mode 100644 index 0000000..a0f1fdb Binary files /dev/null and b/packages/System.Text.Json.8.0.0/Icon.png differ diff --git a/packages/System.Text.Json.8.0.0/LICENSE.TXT b/packages/System.Text.Json.8.0.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.Text.Json.8.0.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Text.Json.8.0.0/PACKAGE.md b/packages/System.Text.Json.8.0.0/PACKAGE.md new file mode 100644 index 0000000..1ddd210 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/PACKAGE.md @@ -0,0 +1,257 @@ +## About + + + +Provides high-performance and low-allocating types that serialize objects to JavaScript Object Notation (JSON) text and deserialize JSON text to objects, with UTF-8 support built-in. Also provides types to read and write JSON text encoded as UTF-8, and to create an in-memory document object model (DOM), that is read-only, for random access of the JSON elements within a structured view of the data. + +## Key Features + + + +* High-performance reader and writer types for UTF-8 encoded JSON. +* A fully-featured JSON serializer for .NET types using reflection or source generated contracts. +* A high-performance read-only JSON DOM (JsonDocument) and a mutable DOM that interoperates with the serializer (JsonNode). +* Built-in support for async serialization, including IAsyncEnumerable support. +* Fully customizable contract model for serializable types. + +## How to Use + + + +The System.Text.Json library is built-in as part of the shared framework in .NET Runtime. The package can be installed when you need to use the most recent version in older target frameworks. + +Serialization: +```csharp +using System; +using System.Text.Json; + +WeatherForecast forecast = new (DateTimeOffset.Now, 26.6f, "Sunny"); +var serialized = JsonSerializer.Serialize(forecast); + +Console.WriteLine(serialized); +// {"Date":"2023-08-02T16:01:20.9025406+00:00","TemperatureCelsius":26.6,"Summary":"Sunny"} + +var forecastDeserialized = JsonSerializer.Deserialize(serialized); +Console.WriteLine(forecast == forecastDeserialized); +// True + +public record WeatherForecast(DateTimeOffset Date, float TemperatureCelsius, string? Summary); +``` + +Serialization using the source generator: +```csharp +using System.Text.Json; +using System.Text.Json.Serialization; + +WeatherForecast forecast = new (DateTimeOffset.Now, 26.6f, "Sunny"); +var serialized = JsonSerializer.Serialize(forecast, SourceGenerationContext.Default.WeatherForecast); + +Console.WriteLine(serialized); +// {"Date":"2023-08-02T16:01:20.9025406+00:00","TemperatureCelsius":26.6,"Summary":"Sunny"} + +var forecastDeserialized = JsonSerializer.Deserialize(serialized, SourceGenerationContext.Default.WeatherForecast); +Console.WriteLine(forecast == forecastDeserialized); +// True + +public record WeatherForecast(DateTimeOffset Date, float TemperatureCelsius, string? Summary); + +[JsonSourceGenerationOptions(WriteIndented = true)] +[JsonSerializable(typeof(WeatherForecast))] +internal partial class SourceGenerationContext : JsonSerializerContext +{ +} +``` + +Using the JSON DOM: +```csharp + +using System; +using System.Text.Json; +using System.Text.Json.Nodes; + +string jsonString = +@"{ + ""Date"": ""2019-08-01T00:00:00"", + ""Temperature"": 25, + ""Summary"": ""Hot"", + ""DatesAvailable"": [ + ""2019-08-01T00:00:00"", + ""2019-08-02T00:00:00"" + ], + ""TemperatureRanges"": { + ""Cold"": { + ""High"": 20, + ""Low"": -10 + }, + ""Hot"": { + ""High"": 60, + ""Low"": 20 + } + } +} +"; + +JsonNode forecastNode = JsonNode.Parse(jsonString)!; + + +// Get value from a JsonNode. +JsonNode temperatureNode = forecastNode["Temperature"]!; +Console.WriteLine($"Type={temperatureNode.GetType()}"); +Console.WriteLine($"JSON={temperatureNode.ToJsonString()}"); +//output: +//Type = System.Text.Json.Nodes.JsonValue`1[System.Text.Json.JsonElement] +//JSON = 25 + +// Get a typed value from a JsonNode. +int temperatureInt = (int)forecastNode["Temperature"]!; +Console.WriteLine($"Value={temperatureInt}"); +//output: +//Value=25 + +// Get a typed value from a JsonNode by using GetValue. +temperatureInt = forecastNode["Temperature"]!.GetValue(); +Console.WriteLine($"TemperatureInt={temperatureInt}"); +//output: +//Value=25 + +// Get a JSON object from a JsonNode. +JsonNode temperatureRanges = forecastNode["TemperatureRanges"]!; +Console.WriteLine($"Type={temperatureRanges.GetType()}"); +Console.WriteLine($"JSON={temperatureRanges.ToJsonString()}"); +//output: +//Type = System.Text.Json.Nodes.JsonObject +//JSON = { "Cold":{ "High":20,"Low":-10},"Hot":{ "High":60,"Low":20} } + +// Get a JSON array from a JsonNode. +JsonNode datesAvailable = forecastNode["DatesAvailable"]!; +Console.WriteLine($"Type={datesAvailable.GetType()}"); +Console.WriteLine($"JSON={datesAvailable.ToJsonString()}"); +//output: +//datesAvailable Type = System.Text.Json.Nodes.JsonArray +//datesAvailable JSON =["2019-08-01T00:00:00", "2019-08-02T00:00:00"] + +// Get an array element value from a JsonArray. +JsonNode firstDateAvailable = datesAvailable[0]!; +Console.WriteLine($"Type={firstDateAvailable.GetType()}"); +Console.WriteLine($"JSON={firstDateAvailable.ToJsonString()}"); +//output: +//Type = System.Text.Json.Nodes.JsonValue`1[System.Text.Json.JsonElement] +//JSON = "2019-08-01T00:00:00" + +// Get a typed value by chaining references. +int coldHighTemperature = (int)forecastNode["TemperatureRanges"]!["Cold"]!["High"]!; +Console.WriteLine($"TemperatureRanges.Cold.High={coldHighTemperature}"); +//output: +//TemperatureRanges.Cold.High = 20 + +// Parse a JSON array +JsonNode datesNode = JsonNode.Parse(@"[""2019-08-01T00:00:00"",""2019-08-02T00:00:00""]")!; +JsonNode firstDate = datesNode[0]!.GetValue(); +Console.WriteLine($"firstDate={ firstDate}"); +//output: +//firstDate = "2019-08-01T00:00:00" +``` + +Using the low-level JSON reader/writer types +```csharp +using System; +using System.IO; +using System.Text; +using System.Text.Json; + +var writerOptions = new JsonWriterOptions +{ + Indented = true +}; + +using var stream = new MemoryStream(); +using var writer = new Utf8JsonWriter(stream, writerOptions); + +writer.WriteStartObject(); +writer.WriteString("date", DateTimeOffset.Parse("8/2/2023 9:00 AM")); +writer.WriteNumber("temp", 42); +writer.WriteEndObject(); +writer.Flush(); + +var jsonBytes = stream.ToArray(); +string json = Encoding.UTF8.GetString(jsonBytes); +Console.WriteLine(json); +// { +// "date": "2023-08-02T09:00:00+00:00" +// "temp": 42 +// } + +var readerOptions = new JsonReaderOptions +{ + AllowTrailingCommas = true, + CommentHandling = JsonCommentHandling.Skip +}; +var reader = new Utf8JsonReader(jsonBytes, readerOptions); + +while (reader.Read()) +{ + Console.Write(reader.TokenType); + + switch (reader.TokenType) + { + case JsonTokenType.PropertyName: + case JsonTokenType.String: + { + string? text = reader.GetString(); + Console.Write(" "); + Console.Write(text); + break; + } + + case JsonTokenType.Number: + { + int intValue = reader.GetInt32(); + Console.Write(" "); + Console.Write(intValue); + break; + } + + // Other token types elided for brevity + } + Console.WriteLine(); +} +// StartObject +// PropertyName date +// String 2023-08-02T09:00:00+00:00 +// PropertyName temp +// Number 42 +// EndObject +``` + +## Main Types + + + +The main types provided by this library are: + +* `System.Text.Json.Utf8JsonWriter` +* `System.Text.Json.Utf8JsonReader` +* `System.Text.Json.JsonSerializer` +* `System.Text.Json.JsonConverter` +* `System.Text.Json.JsonDocument` +* `System.Text.Json.Nodes.JsonNode` +* `System.Text.Json.Serialization.Metadata.JsonTypeInfo` + +## Additional Documentation + +* [Conceptual documentation](https://learn.microsoft.com/dotnet/standard/serialization/system-text-json/overview) +* [API documentation](https://learn.microsoft.com/dotnet/api/system.text.json) + +## Related Packages + + + +* Lightweight data formats abstraction: [System.Memory.Data](https://www.nuget.org/packages/System.Memory.Data/) +* Serialization of HttpContent: [System.Net.Http.Json](https://www.nuget.org/packages/System.Net.Http.Json/) + + +## Feedback & Contributing + + + +System.Text.Json is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime). diff --git a/packages/System.Text.Json.8.0.0/System.Text.Json.8.0.0.nupkg b/packages/System.Text.Json.8.0.0/System.Text.Json.8.0.0.nupkg new file mode 100644 index 0000000..2956cde Binary files /dev/null and b/packages/System.Text.Json.8.0.0/System.Text.Json.8.0.0.nupkg differ diff --git a/packages/System.Text.Json.8.0.0/THIRD-PARTY-NOTICES.TXT b/packages/System.Text.Json.8.0.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..4b40333 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,1272 @@ +.NET Runtime uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Runtime software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +https://www.unicode.org/license.html + +Copyright © 1991-2022 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +https://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.13, October 13th, 2022 + + Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR +COPYRIGHT HOLDERS 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. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for vectorized hex parsing +-------------------------------------------------------- + +Copyright (c) 2022, Geoff Langdale +Copyright (c) 2022, Wojciech Mula +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for RFC 3492 +--------------------------- + +The punycode implementation is based on the sample code in RFC 3492 + +Copyright (C) The Internet Society (2003). All Rights Reserved. + +This document and translations of it may be copied and furnished to +others, and derivative works that comment on or otherwise explain it +or assist in its implementation may be prepared, copied, published +and distributed, in whole or in part, without restriction of any +kind, provided that the above copyright notice and this paragraph are +included on all such copies and derivative works. However, this +document itself may not be modified in any way, such as by removing +the copyright notice or references to the Internet Society or other +Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for +copyrights defined in the Internet Standards process must be +followed, or as required to translate it into languages other than +English. + +The limited permissions granted above are perpetual and will not be +revoked by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an +"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Copyright(C) The Internet Society 1997. All Rights Reserved. + +This document and translations of it may be copied and furnished to others, +and derivative works that comment on or otherwise explain it or assist in +its implementation may be prepared, copied, published and distributed, in +whole or in part, without restriction of any kind, provided that the above +copyright notice and this paragraph are included on all such copies and +derivative works.However, this document itself may not be modified in any +way, such as by removing the copyright notice or references to the Internet +Society or other Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for copyrights +defined in the Internet Standards process must be followed, or as required +to translate it into languages other than English. + +The limited permissions granted above are perpetual and will not be revoked +by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an "AS IS" +basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE +DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO +ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY +RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A +PARTICULAR PURPOSE. + +License notice for Algorithm from RFC 4122 - +A Universally Unique IDentifier (UUID) URN Namespace +---------------------------------------------------- + +Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. +Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & +Digital Equipment Corporation, Maynard, Mass. +Copyright (c) 1998 Microsoft. +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: permission to use, copy, +modify, and distribute this file for any purpose is hereby +granted without fee, provided that the above copyright notices and +this notice appears in all source code copies, and that none of +the names of Open Software Foundation, Inc., Hewlett-Packard +Company, Microsoft, or Digital Equipment Corporation be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Neither Open Software +Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital +Equipment Corporation makes any representations about the +suitability of this software for any purpose." + +License notice for The LLVM Compiler Infrastructure (Legacy License) +-------------------------------------------------------------------- + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +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 +CONTRIBUTORS OR COPYRIGHT HOLDERS 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 WITH THE +SOFTWARE. + +License notice for Bob Jenkins +------------------------------ + +By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this +code any way you wish, private, educational, or commercial. It's free. + +License notice for Greg Parker +------------------------------ + +Greg Parker gparker@cs.stanford.edu December 2000 +This code is in the public domain and may be copied or modified without +permission. + +License notice for libunwind based code +---------------------------------------- + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for Printing Floating-Point Numbers (Dragon4) +------------------------------------------------------------ + +/****************************************************************************** + Copyright (c) 2014 Ryan Juckett + http://www.ryanjuckett.com/ + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source + distribution. +******************************************************************************/ + +License notice for Printing Floating-point Numbers (Grisu3) +----------------------------------------------------------- + +Copyright 2012 the V8 project authors. All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xxHash +------------------------- + +xxHash - Extremely Fast Hash algorithm +Header File +Copyright (C) 2012-2021 Yann Collet + +BSD 2-Clause License (https://www.opensource.org/licenses/bsd-license.php) + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +You can contact the author at: + - xxHash homepage: https://www.xxhash.com + - xxHash source repository: https://github.com/Cyan4973/xxHash + +License notice for Berkeley SoftFloat Release 3e +------------------------------------------------ + +https://github.com/ucb-bar/berkeley-softfloat-3 +https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt + +License for Berkeley SoftFloat Release 3e + +John R. Hauser +2018 January 20 + +The following applies to the whole of SoftFloat Release 3e as well as to +each source file individually. + +Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the +University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions, and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE +DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xoshiro RNGs +-------------------------------- + +Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org) + +To the extent possible under law, the author has dedicated all copyright +and related and neighboring rights to this software to the public domain +worldwide. This software is distributed without any warranty. + +See . + +License for fastmod (https://github.com/lemire/fastmod), ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data) and fastrange (https://github.com/lemire/fastrange) +-------------------------------------- + + Copyright 2018 Daniel Lemire + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +License for sse4-strstr (https://github.com/WojciechMula/sse4-strstr) +-------------------------------------- + + Copyright (c) 2008-2016, Wojciech Mula + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for The C++ REST SDK +----------------------------------- + +C++ REST SDK + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for MessagePack-CSharp +------------------------------------- + +MessagePack for C# + +MIT License + +Copyright (c) 2017 Yoshifumi Kawai + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for lz4net +------------------------------------- + +lz4net + +Copyright (c) 2013-2017, Milosz Krajewski + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Nerdbank.Streams +----------------------------------- + +The MIT License (MIT) + +Copyright (c) Andrew Arnott + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for RapidJSON +---------------------------- + +Tencent is pleased to support the open source community by making RapidJSON available. + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. + +Licensed under the MIT License (the "License"); you may not use this file except +in compliance with the License. You may obtain a copy of the License at + +http://opensource.org/licenses/MIT + +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. + +License notice for DirectX Math Library +--------------------------------------- + +https://github.com/microsoft/DirectXMath/blob/master/LICENSE + + The MIT License (MIT) + +Copyright (c) 2011-2020 Microsoft Corp + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +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 OR COPYRIGHT +HOLDERS 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. + +License notice for ldap4net +--------------------------- + +The MIT License (MIT) + +Copyright (c) 2018 Alexander Chermyanin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for vectorized sorting code +------------------------------------------ + +MIT License + +Copyright (c) 2020 Dan Shechter + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for musl +----------------------- + +musl as a whole is licensed under the following standard MIT license: + +Copyright © 2005-2020 Rich Felker, et al. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + + +License notice for "Faster Unsigned Division by Constants" +------------------------------ + +Reference implementations of computing and using the "magic number" approach to dividing +by constants, including codegen instructions. The unsigned division incorporates the +"round down" optimization per ridiculous_fish. + +This is free and unencumbered software. Any copyright is dedicated to the Public Domain. + + +License notice for mimalloc +----------------------------------- + +MIT License + +Copyright (c) 2019 Microsoft Corporation, Daan Leijen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for The LLVM Project +----------------------------------- + +Copyright 2019 LLVM Project + +Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions; +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +https://llvm.org/LICENSE.txt + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +License notice for Apple header files +------------------------------------- + +Copyright (c) 1980, 1986, 1993 + The Regents of the University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. +4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +License notice for JavaScript queues +------------------------------------- + +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. + +Statement of Purpose +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: +the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; +moral rights retained by the original author(s) and/or performer(s); +publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; +rights protecting the extraction, dissemination, use and reuse of data in a Work; +database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and +other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. +4. Limitations and Disclaimers. +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. + + +License notice for FastFloat algorithm +------------------------------------- +MIT License +Copyright (c) 2021 csFastFloat authors +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License notice for MsQuic +-------------------------------------- + +Copyright (c) Microsoft Corporation. +Licensed under the MIT License. + +Available at +https://github.com/microsoft/msquic/blob/main/LICENSE + +License notice for m-ou-se/floatconv +------------------------------- + +Copyright (c) 2020 Mara Bos +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for code from The Practice of Programming +------------------------------- + +Copyright (C) 1999 Lucent Technologies + +Excerpted from 'The Practice of Programming +by Brian W. Kernighan and Rob Pike + +You may use this code for any purpose, as long as you leave the copyright notice and book citation attached. + +Notice for Euclidean Affine Functions and Applications to Calendar +Algorithms +------------------------------- + +Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar +Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf + +License notice for amd/aocl-libm-ose +------------------------------- + +Copyright (C) 2008-2020 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +License notice for fmtlib/fmt +------------------------------- + +Formatting library for C++ + +Copyright (c) 2012 - present, Victor Zverovich + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License for Jb Evain +--------------------- + +Copyright (c) 2006 Jb Evain (jbevain@gmail.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +License for MurmurHash3 +-------------------------------------- + +https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp + +MurmurHash3 was written by Austin Appleby, and is placed in the public +domain. The author hereby disclaims copyright to this source + +License for Fast CRC Computation +-------------------------------------- + +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc32_ieee_by4.asm +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc64_ecma_norm_by8.asm + +Copyright(c) 2011-2015 Intel Corporation All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License for C# Implementation of Fast CRC Computation +----------------------------------------------------- + +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/src/ImageSharp/Formats/Png/Zlib/Crc32.cs + +Copyright (c) Six Labors. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/LICENSE diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll new file mode 100644 index 0000000..2f34d71 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..8535a8b Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..1f4ced7 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..e30a18e Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..fb2caae Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..fd1d9a1 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..f50e97c Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..b7b638b Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..eb87855 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..cf51462 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..8bfef7a Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..18adb86 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..507e005 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..8162973 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll new file mode 100644 index 0000000..d55c3ea Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..8535a8b Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..1f4ced7 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..e30a18e Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..fb2caae Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..fd1d9a1 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..f50e97c Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..b7b638b Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..eb87855 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..cf51462 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..8bfef7a Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..18adb86 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..507e005 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..8162973 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/System.Text.Json.SourceGeneration.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/System.Text.Json.SourceGeneration.dll new file mode 100644 index 0000000..63ef301 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/System.Text.Json.SourceGeneration.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/cs/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/cs/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..8535a8b Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/cs/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/de/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/de/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..1f4ced7 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/de/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/es/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/es/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..e30a18e Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/es/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/fr/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/fr/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..fb2caae Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/fr/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/it/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/it/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..fd1d9a1 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/it/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/ja/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/ja/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..f50e97c Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/ja/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/ko/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/ko/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..b7b638b Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/ko/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/pl/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/pl/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..eb87855 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/pl/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..cf51462 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/ru/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/ru/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..8bfef7a Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/ru/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/tr/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/tr/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..18adb86 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/tr/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..507e005 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll new file mode 100644 index 0000000..8162973 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/analyzers/dotnet/roslyn4.4/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll differ diff --git a/packages/System.Text.Json.8.0.0/buildTransitive/net461/System.Text.Json.targets b/packages/System.Text.Json.8.0.0/buildTransitive/net461/System.Text.Json.targets new file mode 100644 index 0000000..978f95f --- /dev/null +++ b/packages/System.Text.Json.8.0.0/buildTransitive/net461/System.Text.Json.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Text.Json.8.0.0/buildTransitive/net462/System.Text.Json.targets b/packages/System.Text.Json.8.0.0/buildTransitive/net462/System.Text.Json.targets new file mode 100644 index 0000000..db5e5c2 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/buildTransitive/net462/System.Text.Json.targets @@ -0,0 +1,31 @@ + + + + + <_System_Text_JsonAnalyzer Include="@(Analyzer)" Condition="'%(Analyzer.NuGetPackageId)' == 'System.Text.Json'" /> + + + + + + + + + + + + + + + + + + + diff --git a/packages/System.Text.Json.8.0.0/buildTransitive/net6.0/System.Text.Json.targets b/packages/System.Text.Json.8.0.0/buildTransitive/net6.0/System.Text.Json.targets new file mode 100644 index 0000000..db5e5c2 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/buildTransitive/net6.0/System.Text.Json.targets @@ -0,0 +1,31 @@ + + + + + <_System_Text_JsonAnalyzer Include="@(Analyzer)" Condition="'%(Analyzer.NuGetPackageId)' == 'System.Text.Json'" /> + + + + + + + + + + + + + + + + + + + diff --git a/packages/System.Text.Json.8.0.0/buildTransitive/netcoreapp2.0/System.Text.Json.targets b/packages/System.Text.Json.8.0.0/buildTransitive/netcoreapp2.0/System.Text.Json.targets new file mode 100644 index 0000000..e8c4c04 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/buildTransitive/netcoreapp2.0/System.Text.Json.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Text.Json.8.0.0/buildTransitive/netstandard2.0/System.Text.Json.targets b/packages/System.Text.Json.8.0.0/buildTransitive/netstandard2.0/System.Text.Json.targets new file mode 100644 index 0000000..db5e5c2 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/buildTransitive/netstandard2.0/System.Text.Json.targets @@ -0,0 +1,31 @@ + + + + + <_System_Text_JsonAnalyzer Include="@(Analyzer)" Condition="'%(Analyzer.NuGetPackageId)' == 'System.Text.Json'" /> + + + + + + + + + + + + + + + + + + + diff --git a/packages/System.Text.Json.8.0.0/lib/net462/System.Text.Json.dll b/packages/System.Text.Json.8.0.0/lib/net462/System.Text.Json.dll new file mode 100644 index 0000000..7405d75 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/lib/net462/System.Text.Json.dll differ diff --git a/packages/System.Text.Json.8.0.0/lib/net462/System.Text.Json.xml b/packages/System.Text.Json.8.0.0/lib/net462/System.Text.Json.xml new file mode 100644 index 0000000..da1a571 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/lib/net462/System.Text.Json.xml @@ -0,0 +1,5785 @@ + + + + System.Text.Json + + + + Defines how the struct handles comments. + + + Allows comments within the JSON input and treats them as valid tokens. While reading, the caller can access the comment values. + + + Doesn't allow comments within the JSON input. Comments are treated as invalid JSON if found, and a is thrown. This is the default value. + + + Allows comments within the JSON input and ignores them. The behaves as if no comments are present. + + + Provides a mechanism for examining the structural content of a JSON value without automatically instantiating data values. + + + Releases the resources used by this instance. + + + Parses a sequence as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses memory as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON string value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + + contains unsupported options. + A task to produce a JsonDocument representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + A JsonDocument representing the value (and nested values) read from the reader. + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + When the method returns, contains the parsed document. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonDocument; if the reader ran out of data while parsing. All other situations result in an exception being thrown. + + + Writes the document to the provided writer as a JSON value. + The writer to which to write the document. + The parameter is . + The of this would result in invalid JSON. + The parent has been disposed. + + + Gets the root element of this JSON document. + A representing the value of the document. + + + Provides the ability for the user to define custom behavior when parsing JSON to create a . + + + Gets or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma at the end of a list of JSON values in an object or array is allowed; otherwise, . Default is + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The comment handling enum is set to a value that is not supported (or not within the enum range). + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when parsing JSON data, with the default (that is, 0) indicating a maximum depth of 64. + The max depth is set to a negative value. + The maximum depth allowed when parsing JSON data. + + + Represents a specific JSON value within a . + + + Gets a JsonElement that can be safely stored beyond the lifetime of the original . + A JsonElement that can be safely stored beyond the lifetime of the original . + + + Gets an enumerator to enumerate the values in the JSON array represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the values in the JSON array represented by this JsonElement. + + + Gets an enumerator to enumerate the properties in the JSON object represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the properties in the JSON object represented by this JsonElement. + + + Gets the number of values contained within the current array value. + This value's is not . + The parent has been disposed. + The number of values contained within the current array value. + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a byte array. + This value's is not . + The value is not encoded as Base64 text and hence cannot be decoded to bytes. + The parent has been disposed. + The value decoded as a byte array. + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as an . + + + Gets a representing the value of a required property identified by . + The UTF-8 representation (with no Byte-Order-Mark (BOM)) of the name of the property to return. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + + is . + The parent has been disposed. + A representing the value of the requested property. + + + Gets a string that represents the original input data backing this value. + The parent has been disposed. + The original input data backing this value. + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + A JsonElement representing the value (and nested values) read from the reader. + + + Gets a string representation for the current value appropriate to the value type. + The parent has been disposed. + A string representation for the current value appropriate to the value type. + + + Attempts to represent the current JSON number as a . + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a byte array, assuming that it is Base64 encoded. + If the method succeeds, contains the decoded binary representation of the Base64 text. + This value's is not . + The parent has been disposed. + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The UTF-8 (with no Byte-Order-Mark (BOM)) representation of the name of the property to return. + Receives the value of the located property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, its value is assigned to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + + is . + The parent has been disposed. + + if the property was found; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Receives the parsed element. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonElement; if the reader ran out of data while parsing. + All other situations result in an exception being thrown. + + + Compares the text represented by a UTF8-encoded byte span to the string value of this element. + The UTF-8 encoded text to compare against. + This value's is not . + + if the string value of this element has the same UTF-8 encoding as + ; otherwise, . + + + Compares a specified read-only character span to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Compares a specified string to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Writes the element to the specified writer as a JSON value. + The writer to which to write the element. + The parameter is . + The of this value is . + The parent has been disposed. + + + Gets the value at the specified index if the current value is an . + The item index. + This value's is not . + + is not in the range [0, ()). + The parent has been disposed. + The value at the specified index. + + + Gets the type of the current JSON value. + The parent has been disposed. + The type of the current JSON value. + + + Represents an enumerator for the contents of a JSON array. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the array. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for an array of that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an enumerator for the properties of a JSON object. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates the properties of an object. + An enumerator that can be used to iterate through the object. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for objects that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides methods to transform UTF-8 or UTF-16 encoded text into a form that is suitable for JSON. + + + Encodes a UTF-8 text value as a JSON string. + The UTF-8 encoded text to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-8 bytes. + The encoded JSON text. + + + Encodes a specified text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Encodes the string text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is . + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Determines whether this instance and a specified object, which must also be a instance, have the same value. + The object to compare to this instance. + + if the current instance and are equal; otherwise, . + + + Determines whether this instance and another specified instance have the same value. + The object to compare to this instance. + + if this instance and have the same value; otherwise, . + + + Returns the hash code for this . + The hash code for this instance. + + + Converts the value of this instance to a . + The underlying UTF-16 encoded string. + + + Gets the UTF-8 encoded representation of the pre-encoded JSON text. + The UTF-8 encoded representation of the pre-encoded JSON text. + + + Gets the UTF-16 encoded representation of the pre-encoded JSON text as a . + + + Defines a custom exception object that is thrown when invalid JSON text is encountered, the defined maximum depth is passed, or the JSON text is not compatible with the type of a property on an object. + + + Initializes a new instance of the class. + + + Creates a new exception object with serialized data. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + is . + + + Initializes a new instance of the class with a specified error message. + The context-specific error message. + + + Initializes a new instance of the class, with a specified error message and a reference to the inner exception that is the cause of this exception. + The context-specific error message. + The exception that caused the current exception. + + + Creates a new exception object to relay error information to the user. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count within the current line (starting at 0) where the invalid JSON was encountered. + + + Creates a new exception object to relay error information to the user that includes a specified inner exception. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count (starting at 0) within the current line where the invalid JSON was encountered. + The exception that caused the current exception. + + + Sets the with information about the exception. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + + Gets the zero-based number of bytes read within the current line before the exception. + The zero-based number of bytes read within the current line before the exception. + + + Gets the zero-based number of lines read before the exception. + The zero-based number of lines read before the exception. + + + Gets a message that describes the current exception. + The error message that describes the current exception. + + + Gets The path within the JSON where the exception was encountered. + The path within the JSON where the exception was encountered. + + + Determines the naming policy used to convert a string-based name to another format, such as a camel-casing format. + + + Initializes a new instance of . + + + When overridden in a derived class, converts the specified name according to the policy. + The name to convert. + The converted name. + + + Gets the naming policy for camel-casing. + The naming policy for camel-casing. + + + Gets the naming policy for lowercase kebab-casing. + + + Gets the naming policy for uppercase kebab-casing. + + + Gets the naming policy for lowercase snake-casing. + + + Gets the naming policy for uppercase snake-casing. + + + Represents a single property for a JSON object. + + + Compares the specified UTF-8 encoded text to the name of this property. + The UTF-8 encoded text to compare against. + This value's is not . + + if the name of this property has the same UTF-8 encoding as ; otherwise, . + + + Compares the specified text as a character span to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise, . + + + Compares the specified string to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise . + + + Provides a string representation of the property for debugging purposes. + A string containing the uninterpreted value of the property, beginning at the declaring open-quote and ending at the last character that is part of the value. + + + Writes the property to the provided writer as a named JSON object property. + The writer to which to write the property. + + is . + + is too large to be a JSON object property. + The of this JSON property's would result in invalid JSON. + The parent has been disposed. + + + Gets the name of this property. + The name of this property. + + + Gets the value of this property. + The value of this property. + + + Provides the ability for the user to define custom behavior when reading JSON. + + + Gets or sets a value that defines whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma is allowed; otherwise, . + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The property is being set to a value that is not a member of the enumeration. + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when reading JSON, with the default (that is, 0) indicating a maximum depth of 64. + The maximum depth is being set to a negative value. + The maximum depth allowed when reading JSON. + + + Defines an opaque type that holds and saves all the relevant state information, which must be provided to the to continue reading after processing incomplete data. + + + Constructs a new instance. + Defines the customized behavior of the that is different from the JSON RFC (for example how to handle comments, or the maximum depth allowed when reading). By default, the follows the JSON RFC strictly (comments within the JSON are invalid) and reads up to a maximum depth of 64. + The maximum depth is set to a non-positive value (< 0). + + + Gets the custom behavior to use when reading JSON data using the struct that may deviate from strict adherence to the JSON specification, which is the default behavior. + The custom behavior to use when reading JSON data. + + + Provides functionality to serialize objects or value types to JSON and to deserialize JSON into objects or value types. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + + or is . + The JSON is invalid, + or there is remaining data in the Stream. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + + or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + The JSON is invalid, + or there is remaining data in the buffer. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + +-or- + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance specified by the . + The reader to read. + Metadata about the type to convert. + The JSON is invalid, + is not compatible with the JSON, + or a value could not be read from the reader. + + is using unsupported options. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader and converts it into an instance of a specified type. + The reader to read the JSON from. + The type of the object to convert to and return. + Options to control the serializer behavior during reading. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Options to control the behavior during reading. + The type to deserialize the JSON value into. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the UTF-8 encoded text. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the JSON value. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance of the type specified by a generic type parameter. + The reader to read the JSON from. + Options to control serializer behavior during reading. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + uses unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The that can be used to cancel the read operation. + + or is . + The JSON is invalid, + or when there is remaining data in the Stream. + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a specified type. The stream will be read to completion. + The JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + A cancellation token that may be used to cancel the read operation. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + The that can be used to cancel the read operation. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a type specified by a generic type parameter. The stream will be read to completion. + The JSON data to parse. + Options to control the behavior during reading. + A token that may be used to cancel the read operation. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + + is . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The which may be used to cancel the read operation. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Options to control the behavior during reading. + The which may be used to cancel the read operation. + The element type to deserialize asynchronously. + + is . + An representation of the provided JSON array. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Metadata about the element type to convert. + The that can be used to cancel the read operation. + The element type to deserialize asynchronously. + + or is . + An representation of the provided JSON array. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the value of a specified type into a JSON string. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + + or is . + + does not match the type of . + + + Writes the JSON representation of the specified type to the provided writer. + The JSON writer to write to. + The value to convert and write. + The type of the to convert. + Options to control serialization behavior. + + is not compatible with + + or is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + A JSON writer to write to. + The value to convert and write. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + + Converts the value of a type specified by a generic type parameter into a JSON string. + The value to convert. + Options to control serialization behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes the JSON representation of a type specified by a generic type parameter to the provided writer. + A JSON writer to write to. + The value to convert and write. + Options to control serialization behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + The type of the value to serialize. + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and writes it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + + is . + + does not match the type of . + A task that represents the asynchronous write operation. + + + Asynchronously converts the value of a specified type to UTF-8 encoded JSON text and writes it to the specified stream. + The UTF-8 stream to write to. + The value to convert. + The type of the to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + The that can be used to cancel the write operation. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Asynchronously converts a value of a type specified by a generic type parameter to UTF-8 encoded JSON text and writes it to a stream. + The UTF-8 stream to write to. + The value to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A UTF-8 representation of the value. + + + Converts a value of the specified type into a JSON string, encoded as UTF-8 bytes. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A UTF-8 representation of the value. + + + Converts the value of a type specified by a generic type parameter into a JSON string, encoded as UTF-8 bytes. + The value to convert. + Options to control the conversion behavior. + The type of the value. + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A UTF-8 representation of the value. + + + Indicates whether unconfigured instances should be set to use the reflection-based . + + + Specifies scenario-based default serialization options that can be used to construct a instance. + + + + General-purpose option values. These are the same settings that are applied if a member isn't specified. + For information about the default property values that are applied, see JsonSerializerOptions properties. + + + + + Option values appropriate to Web-based scenarios. + This member implies that: + - Property names are treated as case-insensitive. + - "camelCase" name formatting should be employed. + - Quoted numbers (JSON strings for number properties) are allowed. + + + + Provides options to be used with . + + + Initializes a new instance of the class. + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + + Copies the options from a instance to a new instance. + The options instance to copy options from. + + is . + + + Appends a new to the metadata resolution of the current instance. + The generic definition of the specified context type. + + + Returns the converter for the specified type. + The type to return a converter for. + The configured for returned an invalid converter. + There is no compatible for or its serializable members. + The first converter that supports the given type. + + + Gets the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + + is . + + is not valid for serialization. + The contract metadata resolved for . + + + Marks the current instance as read-only to prevent any further user modification. + The instance does not specify a setting. + + + Marks the current instance as read-only preventing any further user modification. + Populates unconfigured properties with the reflection-based default. + + The instance does not specify a setting. Thrown when is . + -or- + The feature switch has been turned off. + + + + Tries to get the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + When this method returns, contains the resolved contract metadata, or if the contract could not be resolved. + + is . + + is not valid for serialization. + + if a contract for was found, or otherwise. + + + Get or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being deserialized. + This property was set after serialization or deserialization has occurred. + + if an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored); otherwise. + + + Gets the list of user-defined converters that were registered. + The list of custom converters. + + + Gets a read-only, singleton instance of that uses the default configuration. + + + Gets or sets the default buffer size, in bytes, to use when creating temporary buffers. + The buffer size is less than 1. + This property was set after serialization or deserialization has occurred. + The default buffer size in bytes. + + + Gets or sets a value that determines when properties with default values are ignored during serialization or deserialization. + The default value is . + This property is set to . + This property is set after serialization or deserialization has occurred. + +-or- + + has been set to . These properties cannot be used together. + + + Gets or sets the policy used to convert a key's name to another format, such as camel-casing. + The policy used to convert a key's name to another format. + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoding. + + + Gets or sets a value that indicates whether values are ignored during serialization and deserialization. The default value is . + This property was set after serialization or deserialization has occurred. + +-or- + + has been set to a non-default value. These properties cannot be used together. + + if null values are ignored during serialization and deserialization; otherwise, . + + + Gets or sets a value that indicates whether read-only fields are ignored during serialization. A field is read-only if it is marked with the keyword. The default value is . + This property is set after serialization or deserialization has occurred. + + if read-only fields are ignored during serialization; otherwise. + + + Gets a value that indicates whether read-only properties are ignored during serialization. The default value is . + This property was set after serialization or deserialization has occurred. + + if read-only properties are ignored during serialization; otherwise, . + + + Gets or sets a value that indicates whether fields are handled during serialization and deserialization. + The default value is . + This property is set after serialization or deserialization has occurred. + + if fields are included during serialization; otherwise, . + + + Gets a value that indicates whether the current instance has been locked for user modification. + + + Gets or sets the maximum depth allowed when serializing or deserializing JSON, with the default value of 0 indicating a maximum depth of 64. + This property was set after serialization or deserialization has occurred. + The max depth is set to a negative value. + The maximum depth allowed when serializing or deserializing JSON. + + + Gets or sets an object that specifies how number types should be handled when serializing or deserializing. + This property is set after serialization or deserialization has occurred. + + + Gets or sets the preferred object creation handling for properties when deserializing JSON. + When set to , all properties that are capable of reusing the existing instance will be populated. + + + Gets or sets a value that indicates whether a property's name uses a case-insensitive comparison during deserialization. The default value is . + + if property names are compared case-insensitively; otherwise, . + + + Gets or sets a value that specifies the policy used to convert a property's name on an object to another format, such as camel-casing, or to leave property names unchanged. + A property naming policy, or to leave property names unchanged. + + + Gets or sets a value that defines how comments are handled during deserialization. + This property was set after serialization or deserialization has occurred. + The comment handling enum is set to a value that is not supported (or not within the enum range). + A value that indicates whether comments are allowed, disallowed, or skipped. + + + Gets or sets an object that specifies how object references are handled when reading and writing JSON. + + + Gets or sets the contract resolver used by this instance. + The property is set after serialization or deserialization has occurred. + + + Gets the list of chained contract resolvers used by this instance. + + + Gets or sets an object that specifies how deserializing a type declared as an is handled during deserialization. + + + Gets or sets an object that specifies how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Gets or sets a value that indicates whether JSON should use pretty printing. By default, JSON is serialized without any extra white space. + This property was set after serialization or deserialization has occurred. + + if JSON is pretty printed on serialization; otherwise, . The default is . + + + Defines the various JSON tokens that make up a JSON text. + + + The token type is a comment string. + + + The token type is the end of a JSON array. + + + The token type is the end of a JSON object. + + + The token type is the JSON literal false. + + + There is no value (as distinct from ). This is the default token type if no data has been read by the . + + + The token type is the JSON literal null. + + + The token type is a JSON number. + + + The token type is a JSON property name. + + + The token type is the start of a JSON array. + + + The token type is the start of a JSON object. + + + The token type is a JSON string. + + + The token type is the JSON literal true. + + + Specifies the data type of a JSON value. + + + A JSON array. + + + The JSON value false. + + + The JSON value null. + + + A JSON number. + + + A JSON object. + + + A JSON string. + + + The JSON value true. + + + There is no value (as distinct from ). + + + Allows the user to define custom behavior when writing JSON using the . + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoder used to override the escaping behavior. + + + Gets or sets a value that indicates whether the should format the JSON output, which includes indenting nested JSON tokens, adding new lines, and adding white space between property names and values. + + if the JSON output is formatted; if the JSON is written without any extra white space. The default is . + + + Gets or sets the maximum depth allowed when writing JSON, with the default (that is, 0) indicating a max depth of 1000. + Thrown when the max depth is set to a negative value. + + + Gets or sets a value that indicates whether the should skip structural validation and allow the user to write invalid JSON. + + if structural validation is skipped and invalid JSON is allowed; if an is thrown on any attempt to write invalid JSON. + + + Represents a mutable JSON array. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Initializes a new instance of the class that contains items from the specified array. + The items to add to the new . + + + Initializes a new instance of the class that contains items from the specified params array. + Options to control the behavior. + The items to add to the new . + + + Adds a to the end of the . + The to be added to the end of the . + + + Adds an object to the end of the . + The object to be added to the end of the . + The type of object to be added. + + + Removes all elements from the . + + + Determines whether an element is in the . + The object to locate in the . + + if is found in the ; otherwise, . + + + Initializes a new instance of the class that contains items from the specified . + The . + Options to control the behavior. + The is not a . + The new instance of the class that contains items from the specified . + + + Returns an enumerator that iterates through the . + An for the . + + + Returns an enumerable that wraps calls to . + The type of the value to obtain from the . + An enumerable iterating over values of the array. + + + The object to locate in the . + The to locate in the . + The index of item if found in the list; otherwise, -1. + + + Inserts an element into the at the specified index. + The zero-based index at which should be inserted. + The to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific from the . + The to remove from the . + + if is successfully removed; otherwise, . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + is less than 0 or is greater than . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Returns an enumerator that iterates through the . + A for the . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in the . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + The base class that represents a single node within a mutable JSON document. + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Creates a new instance of the class. All child nodes are recursively cloned. + A new cloned instance of the current node. + + + Compares the values of two nodes, including the values of all descendant nodes. + The to compare. + The to compare. + + if the tokens are equal; otherwise . + + + Returns the index of the current node from the parent . + The current parent is not a . + The index of the current node. + + + Gets the JSON path. + The JSON Path value. + + + Returns the property name of the current node from the parent object. + The current parent is not a . + The property name of the current node. + + + Gets the value for the current . + The type of the value to obtain from the . + The current cannot be represented as a {TValue}. + The current is not a or is not compatible with {TValue}. + A value converted from the instance. + + + Returns the of the current instance. + The json value kind of the current instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a nullable . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Parses a as UTF-8-encoded data representing a single JSON value into a . The Stream will be read to completion. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + is . + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Options to control the behavior. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + The from the reader. + + + Parses a as UTF-8 encoded data representing a single JSON value into a . The stream will be read to completion. + The JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + A to produce a representation of the JSON value. + + + Replaces this node with a new value. + The value that replaces this node. + The type of value to be replaced. + + + Converts the current instance to string in JSON format. + Options to control the serialization behavior. + JSON representation of current instance. + + + Gets a string representation for the current value appropriate to the node type. + A string representation for the current value appropriate to the node type. + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + The parameter is . + + + Gets or sets the element at the specified index. + The zero-based index of the element to get or set. + + is less than 0 or is greater than the number of properties. + The current is not a . + + + Gets or sets the element with the specified property name. + If the property is not found, is returned. + The name of the property to return. + + is . + The current is not a . + + + Gets the options to control the behavior. + + + Gets the parent . + If there is no parent, is returned. + A parent can either be a or a . + + + Gets the root . + + + Options to control behavior. + + + Gets or sets a value that indicates whether property names on are case insensitive. + + if property names are case insensitive; if property names are case sensitive. + + + Represents a mutable JSON object. + + + Initializes a new instance of the class that contains the specified . + The properties to be added. + Options to control the behavior. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Adds the specified property to the . + The KeyValuePair structure representing the property name and value to add to the . + An element with the same property name already exists in the . + The property name of is . + + + Adds an element with the provided property name and value to the . + The property name of the element to add. + The value of the element to add. + + is . + An element with the same property name already exists in the . + + + Removes all elements from the . + + + Determines whether the contains an element with the specified property name. + The property name to locate in the . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Initializes a new instance of the class that contains properties from the specified . + The . + Options to control the behavior. + The new instance of the class that contains properties from the specified . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Removes the element with the specified property name from the . + The property name of the element to remove. + + is . + + if the element is successfully removed; otherwise, . + + + Determines whether the contains a specific property name and reference. + The element to locate in the . + + if the contains an element with the property name; otherwise, . + + + Copies the elements of the to an array of type KeyValuePair starting at the specified array index. + The one-dimensional Array that is the destination of the elements copied from . + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Removes a key and value from the . + The KeyValuePair structure representing the property name and value to remove from the . + + if the element is successfully removed; otherwise, . + + + Gets the value associated with the specified property name. + The property name of the value to get. + When this method returns, contains the value associated with the specified property name, if the property name is found; otherwise, . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Returns the value of a property with the specified name. + The name of the property to return. + The JSON value of the property with the specified name. + + if a property with the specified name was found; otherwise, . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + Gets a collection containing the property names in the . + An containing the keys of the object that implements . + + + Gets a collection containing the property values in the . + An containing the values in the object that implements . + + + Represents a mutable JSON value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + The that will be used to serialize the value. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Tries to obtain the current JSON value and returns a value that indicates whether the operation succeeded. + When this method returns, contains the parsed value. + The type of value to obtain. + + if the value can be successfully obtained; otherwise, . + + + Specifies that the JSON type should have its method called after deserialization occurs. + + + The method that is called after deserialization. + + + Specifies that the type should have its method called before deserialization occurs. + + + The method that is called before deserialization. + + + Specifies that the type should have its method called after serialization occurs. + + + The method that is called after serialization. + + + Specifies that the type should have its method called before serialization occurs. + + + The method that is called before serialization. + + + Provides the base class for serialization attributes. + + + Creates a new instance of the . + + + When placed on a constructor, indicates that the constructor should be used to create instances of the type on deserialization. + + + Initializes a new instance of . + + + Converts an object or value to or from JSON. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + if the instance can convert the specified object type; otherwise, . + + + Gets the type being converted by the current converter instance. + + + Converts an object or value to or from JSON. + The type of object or value handled by the converter. + + + Initializes a new instance. + + + Determines whether the specified type can be converted. + The type to compare against. + + if the type can be converted; otherwise, . + + + Reads and converts the JSON to type . + The reader. + The type to convert. + An object that specifies serialization options to use. + The converted value. + + + Reads a dictionary key from a JSON property name. + The to read from. + The type to convert. + The options to use when reading the value. + The value that was converted. + + + Writes a specified value as JSON. + The writer to write to. + The value to convert to JSON. + An object that specifies serialization options to use. + + + Writes a dictionary key as a JSON property name. + The to write to. + The value to convert. The value of determines if the converter handles values. + The options to use when writing the value. + + + Gets a value that indicates whether should be passed to the converter on serialization, and whether should be passed on deserialization. + + + Gets the type being converted by the current converter instance. + + + When placed on a property or type, specifies the converter type to use. + + + Initializes a new instance of . + + + Initializes a new instance of with the specified converter type. + The type of the converter. + + + When overridden in a derived class and is , allows the derived class to create a in order to pass additional state. + The type of the converter. + The custom converter. + + + Gets the type of the , or if it was created without a type. + The type of the , or if it was created without a type. + + + Supports converting several types by using a factory pattern. + + + When overridden in a derived class, initializes a new instance of the class. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which is compatible with . + + + Gets the type being converted by the current converter instance. + + + When placed on a type declaration, indicates that the specified subtype should be opted into polymorphic serialization. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared based type. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + A derived type that should be supported in polymorphic serialization of the declared base type. + + + The type discriminator identifier to be used for the serialization of the subtype. + + + When placed on a property of type , any properties that do not have a matching member are added to that dictionary during deserialization and written during serialization. + + + Initializes a new instance of the class. + + + Prevents a property from being serialized or deserialized. + + + Initializes a new instance of . + + + Gets or sets the condition that must be met before a property will be ignored. + + + Controls how the ignores properties on serialization and deserialization. + + + Property is always ignored. + + + Property is always serialized and deserialized, regardless of configuration. + + + Property is ignored only if it equals the default value for its type. + + + Property is ignored if its value is . This is applied only to reference-type properties and fields. + + + Indicates that the member should be included for serialization and deserialization. + The attribute is applied to a non-public property. + + + Initializes a new instance of . + + + The to be used at run time. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that JSON property names should not be converted. + + + Converter to convert enums to and from numeric values. + The enum type that this converter targets. + + + Initializes a new instance of . + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Determines how handles numbers when serializing and deserializing. + + + The "NaN", "Infinity", and "-Infinity" tokens can be read as floating-point constants, and the and values for these constants will be written as their corresponding JSON string representations. + + + Numbers can be read from tokens. Does not prevent numbers from being read from token. + + + Numbers will only be read from tokens and will only be written as JSON numbers (without quotes). + + + Numbers will be written as JSON strings (with quotes), not as JSON numbers. + + + When placed on a type, property, or field, indicates what settings should be used when serializing or deserializing numbers. + + + Initializes a new instance of . + A bitwise combination of the enumeration values that specify how number types should be handled when serializing or deserializing. + + + Indicates what settings should be used when serializing or deserializing numbers. + An object that determines the number serialization and deserialization settings. + + + Determines how deserialization will handle object creation for fields or properties. + + + Attempt to populate any instances already found on a deserialized field or property. + + + A new instance will always be created when deserializing a field or property. + + + Determines how deserialization handles object creation for fields or properties. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the configuration to use when deserializing members. + + + When placed on a type, indicates that the type should be serialized polymorphically. + + + Creates a new instance. + + + Gets or sets a value that indicates whether the deserializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + + to instruct the deserializer to ignore any unrecognized type discriminator IDs and revert to the contract of the base type; to fail the deserialization for unrecognized type discriminator IDs. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + + + Specifies the property name that is present in the JSON when serializing and deserializing. This overrides any naming policy specified by . + + + Initializes a new instance of with the specified property name. + The name of the property. + + + Gets the name of the property. + The name of the property. + + + Specifies the property order that is present in the JSON when serializing. Lower values are serialized first. + If the attribute is not specified, the default value is 0. + + + Initializes a new instance of with the specified order. + The order of the property. + + + Gets the serialization order of the property. + The serialization order of the property. + + + Indicates that the annotated member must bind to a JSON property on deserialization. + + + Initializes a new instance of . + + + Instructs the System.Text.Json source generator to generate source code to help optimize performance when serializing and deserializing instances of the specified type and types in its object graph. + + + Initializes a new instance of with the specified type. + The type to generate source code for. + + + Gets or sets the mode that indicates what the source generator should generate for the type. If the value is , then the setting specified on will be used. + + + Gets or sets the name of the property for the generated for the type on the generated, derived type. + + + Provides metadata about a set of types that is relevant to JSON serialization. + + + Creates an instance of and binds it with the indicated . + The run time provided options for the context instance. + + + Gets metadata for the specified type. + The type to fetch metadata for. + The metadata for the specified type, or if the context has no metadata for the type. + + + Resolves a contract for the requested type and options. + The type to be resolved. + The configuration to use when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Gets the default run-time options for the context. + + + Gets the run-time specified options of the context. If no options were passed when instantiating the context, then a new instance is bound and returned. + + + The generation mode for the System.Text.Json source generator. + + + When specified on , indicates that both type-metadata initialization logic and optimized serialization logic should be generated for all types. When specified on , indicates that the setting on should be used. + + + Instructs the JSON source generator to generate type-metadata initialization logic. + + + Instructs the JSON source generator to generate optimized serialization logic. + + + Instructs the System.Text.Json source generator to assume the specified options will be used at run time via . + + + Initializes a new instance of . + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + is invalid. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default ignore condition. + + + Gets or sets the default value of . + + + Gets or sets the source generation mode for types that don't explicitly set the mode with . + + + Gets or sets a value that indicates whether to ignore read-only fields. + + + Gets or sets a value that indicates whether to ignore read-only properties. + + + Gets or sets a value that indicates whether to include fields for serialization and deserialization. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a built-in naming policy to convert JSON property names with. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a value that indicates whether the source generator defaults to instead of numeric serialization for all enum types encountered in its type graph. + + + Gets or sets a value that indicates whether JSON output is pretty-printed. + + + Converts enumeration values to and from strings. + + + Initializes an instance of the class with the default naming policy that allows integer values. + + + Initializes an instance of the class with a specified naming policy and a value that indicates whether undefined enumeration values are allowed. + The optional naming policy for writing enum values. + + to allow undefined enum values; otherwise, . When , if an enum value isn't defined, it will output as a number rather than a string. + + + Determines whether the specified type can be converted to an enum. + The type to be checked. + + true if the type can be converted; otherwise, false. + + + Creates a converter for the specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Converter to convert enums to and from strings. + The enum type that this converter targets. + + + Initializes a new instance of with the default naming policy and that allows integer values. + + + Initializes a new instance of . + Optional naming policy for writing enum values. + + to allow undefined enum values. When , if an enum value isn't defined, it outputs as a number rather than a string. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Defines how objects of a derived runtime type that has not been explicitly declared for polymorphic serialization should be handled. + + + An object of undeclared runtime type will fail polymorphic serialization. + + + An object of undeclared runtime type will fall back to the serialization contract of the base type. + + + An object of undeclared runtime type will revert to the serialization contract of the nearest declared ancestor type. + Certain interface hierarchies are not supported due to diamond ambiguity constraints. + + + Defines how deserializing a type declared as an is handled during deserialization. + + + A type declared as is deserialized as a . + + + A type declared as is deserialized as a . + + + Determines how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Throws an exception when an unmapped property is encountered. + + + Silently skips any unmapped properties. This is the default behavior. + + + When placed on a type, determines the configuration for the specific type, overriding the global setting. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the unmapped member handling setting for the attribute. + + + Defines the default, reflection-based JSON contract resolver used by System.Text.Json. + + + Creates a mutable instance. + + + Resolves a JSON contract for a given and configuration. + The type for which to resolve a JSON contract. + A instance used to determine contract configuration. + + or is . + A defining a reflection-derived JSON contract for . + + + Gets a list of user-defined callbacks that can be used to modify the initial contract. + + + Used to resolve the JSON serialization contract for requested types. + + + Resolves a contract for the requested type and options. + Type to be resolved. + Configuration used when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Provides serialization metadata about a collection type. + The collection type. + + + + A instance representing the element type. + + + If a dictionary type, the instance representing the key type. + + + The option to apply to number collection elements. + + + A to create an instance of the collection when deserializing. + + + An optimized serialization implementation assuming pre-determined defaults. + + + Represents a supported derived type defined in the metadata of a polymorphic type. + + + Initializes a new instance of the class that represents a supported derived type without a type discriminator. + The derived type to be supported by the polymorphic type metadata. + + + Initializes a new instance of the class that represents a supported derived type with an integer type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Initializes a new instance of the class that represents a supported derived type with a string type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Gets a derived type that should be supported in polymorphic serialization of the declared base type. + + + Gets the type discriminator identifier to be used for the serialization of the subtype. + + + Provides helpers to create and initialize metadata for JSON-serializable types. + + + Creates serialization metadata for an array. + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates serialization metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for and types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for non-dictionary immutable collection types. + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a complex class or struct. + The to use for serialization and deserialization. + Provides serialization metadata about an object type with constructors, properties, and fields. + The type of the class or struct. + + or is . + A instance representing the class or struct. + + + Creates metadata for a property or field. + The to use for serialization and deserialization. + Provides serialization metadata about the property or field. + The type that the converter for the property returns or accepts when converting JSON data. + A instance initialized with the provided metadata. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a primitive or a type with a custom converter. + The to use for serialization and deserialization. + + The generic type definition. + A instance representing the type. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the enum type. + A instance that converts values. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the underlying nullable type. + A instance that converts values + + + Creates a instance that converts values. + Serialization metadata for the underlying nullable type. + The generic definition for the underlying nullable type. + A instance that converts values + + + Gets a type converter that throws a . + The generic definition for the type. + A instance that throws + + + Gets an object that converts values. + + + Gets an object that converts byte array values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + An instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Provides serialization metadata about an object type with constructors, properties, and fields. + The object type to serialize or deserialize. + + + + Provides a mechanism to initialize metadata for a parameterized constructor of the class or struct to be used when deserializing. + + + Gets or sets an object that specifies how number properties and fields should be processed when serializing and deserializing. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterless constructor during deserialization. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterized constructor during deserialization. + + + Gets or sets a mechanism to initialize metadata for properties and fields of the class or struct. + + + Gets or sets a serialization implementation for instances of the class or struct that assumes options specified by . + + + Provides information about a constructor parameter required for JSON deserialization. + + + + Gets or sets the default value of the parameter. + + + Gets or sets a value that specifies whether a default value was specified for the parameter. + + + Gets or sets the name of the parameter. + + + Gets or sets the type of the parameter. + + + Gets or sets the zero-based position of the parameter in the formal parameter list. + + + Defines polymorphic configuration for a specified base type. + + + Creates an empty instance. + + + Gets the list of derived types supported in the current polymorphic type configuration. + + + Gets or sets a value that indicates whether the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + The parent instance has been locked for further modification. + + if the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type; if the deserialization should fail when an unrecognized type discriminator ID is encountered. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + The parent instance has been locked for further modification. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + The parent instance has been locked for further modification. + + + Provides JSON serialization-related metadata about a property or field. + + + Gets or sets the custom attribute provider for the current property. + The instance has been locked for further modification. + + + Gets or sets a custom converter override for the current property. + The instance has been locked for further modification. + + + Gets or sets a getter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a value that indicates whether the current property is a special extension data property. + The instance has been locked for further modification. + +-or- + +The current is not valid for use with extension data. + + + Gets or sets a value that indicates whether the current property is required for deserialization to be successful. + The instance has been locked for further modification. + + + Gets or sets the JSON property name used when serializing the property. + + is . + The instance has been locked for further modification. + + + Gets or sets the applied to the current property. + The instance has been locked for further modification. + + + Gets or sets a value indicating if the property or field should be replaced or populated during deserialization. + + + Gets the value associated with the current contract instance. + + + Gets or sets the serialization order for the current property. + The instance has been locked for further modification. + + + Gets the type of the current property. + + + Gets or sets a setter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a predicate that determines whether the current property value should be serialized. + The instance has been locked for further modification. + + + Provides serialization metadata about a property or field. + The type to convert of the for the property. + + + + A for the property or field, specified by . + + + The declaring type of the property or field. + + + Provides a mechanism to get the property or field's value. + + + Whether the property was annotated with . + + + Specifies a condition for the member to be ignored. + + + Whether the property was annotated with . + + + If , indicates that the member is a property, otherwise indicates the member is a field. + + + Whether the property or field is public. + + + Whether the property or field is a virtual property. + + + The name to be used when processing the property or field, specified by . + + + If the property or field is a number, specifies how it should processed when serializing and deserializing. + + + The name of the property or field. + + + The info for the property or field's type. + + + Provides a mechanism to set the property or field's value. + + + Provides JSON serialization-related metadata about a type. + + + Creates a blank instance for the current . + The declared type for the property. + The property name used in JSON serialization and deserialization. + + or is . + + cannot be used for serialization. + The instance has been locked for further modification. + A blank instance. + + + Creates a blank instance. + The type for which contract metadata is specified. + The instance the metadata is associated with. + + or is . + + cannot be used for serialization. + A blank instance. + + + Creates a blank instance. + The instance the metadata is associated with. + The type for which contract metadata is specified. + + is . + A blank instance. + + + Locks the current instance for further modification. + + + Gets the associated with the current type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Gets a value that indicates whether the current instance has been locked for modification. + + + Gets a value that describes the kind of contract metadata that the current instance specifies. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + An invalid value was specified. + + + Gets or sets a callback to be invoked after deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked after serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets the value associated with the current instance. + + + Gets or sets the from which this metadata instance originated. + The instance has been locked for further modification. + + + Gets or sets a configuration object specifying polymorphism metadata. + + has been associated with a different instance. + The instance has been locked for further modification. + +-or- + +Polymorphic serialization is not supported for the current metadata . + + + Gets or sets the preferred value for properties contained in the type. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for JsonTypeInfoKind.Object. + Specified an invalid value. + + + Gets the list of metadata corresponding to the current type. + + + Gets the for which the JSON serialization contract is being defined. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for . + An invalid value was specified. + + + Provides JSON serialization-related metadata about a type. + The generic definition of the type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Serializes an instance of using values specified at design time. + + + Describes the kind of contract metadata a specifies. + + + Type is serialized as a dictionary with key/value pair entries. + + + Type is serialized as a collection with elements. + + + Type is either a simple value or uses a custom converter. + + + Type is serialized as an object with properties. + + + Contains utilities and combinators acting on . + + + Combines multiple sources into one. + Sequence of contract resolvers to be queried for metadata. + + is . + A combining results from . + + + Creates a resolver and applies modifications to the metadata generated by the source . + The source resolver generating metadata. + The delegate that modifies non- results. + A new instance with modifications applied. + + + Defines how the deals with references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Returns the used for each serialization call. + The resolver to use for serialization and deserialization. + + + Gets an object that indicates whether an object is ignored when a reference cycle is detected during serialization. + + + Gets an object that indicates whether metadata properties are honored when JSON objects and arrays are deserialized into reference types, and written when reference types are serialized. This is necessary to create round-trippable JSON from objects that contain cycles or duplicate references. + + + Defines how the deals with references on serialization and deserialization. + The type of the to create on each serialization or deserialization call. + + + Initializes a new instance of the generic class that can create a instance of the specified type. + + + Creates a new of type used for each serialization call. + The new resolver to use for serialization and deserialization. + + + Defines how the deals with references on serialization and deserialization. + Defines the core behavior of preserving references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Adds an entry to the bag of references using the specified id and value. + This method gets called when an $id metadata property from a JSON object is read. + The identifier of the JSON object or array. + The value of the CLR reference type object that results from parsing the JSON object. + + + Gets the reference identifier of the specified value if exists; otherwise a new id is assigned. + This method gets called before a CLR object is written so we can decide whether to write $id and enumerate the rest of its properties or $ref and step into the next object. + The value of the CLR reference type object to get an id for. + When this method returns, if a reference to value already exists; otherwise, . + The reference id for the specified object. + + + Returns the CLR reference type object related to the specified reference id. + This method gets called when $ref metadata property is read. + The reference id related to the returned object. + The reference type object related to the specified reference id. + + + Provides a high-performance API for forward-only, read-only access to UTF-8 encoded JSON text. + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Copies the current JSON token value from the source, unescaped, as UTF-8 bytes to a buffer. + A buffer to write the unescaped UTF-8 bytes into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of bytes written to . + + + Copies the current JSON token value from the source, unescaped, as UTF-16 characters to a buffer. + A buffer to write the transcoded UTF-16 characters into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of characters written to . + + + Reads the next JSON token value from the source as a . + The value of the JSON token isn't a Boolean value (that is, or ). + + if the is ; if the is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Byte.MinValue or greater than Byte.MaxValue. + The value of the UTF-8 encoded token. + + + Parses the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array. + The type of the JSON token is not a . + The value is not encoded as Base64 text, so it can't be decoded to bytes. + +-or- + +The value contains invalid or more than two padding characters. + +-or- + +The value is incomplete. That is, the JSON string length is not a multiple of 4. + The byte array that represents the current JSON token value. + + + Parses the current JSON token value from the source as a comment and transcodes it as a . + The JSON token is not a comment. + The comment that represents the current JSON token value. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time offset, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Decimal.MinValue or greater than Decimal.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Double.MinValue or greater than Double.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value is in an unsupported format for a Guid. + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + The GUID value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Int16.MinValue or greater than Int16.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int32.MinValue or greater than Int32.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int64.MinValue or greater than Int64.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Parses the current JSON token value from the source as an . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than SByte.MinValue or greater than SByte.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Single.MinValue or greater than Single.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source unescaped and transcodes it as a string. + The JSON token value isn't a string (that is, not a , , or ). + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The token value parsed to a string, or if is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than UInt16.MinValue or greater than UInt16.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt32.MinValue or greater than UInt32.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt64.MinValue or greater than UInt64.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token from the input source. + An invalid JSON token according to the JSON RFC is encountered. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + if the token was read successfully; otherwise, . + + + Skips the children of the current JSON token. + The reader was given partial data with more data to follow (that is, is ). + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decoded binary representation of the Base64 text. + The JSON token is not a . + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to skip the children of the current JSON token. + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or - + +The current depth exceeds the recursive limit set by the maximum depth. + + if there was enough data for the children to be skipped successfully; otherwise, . + + + Compares the UTF-8 encoded text in a read-only byte span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The UTF-8 encoded text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the UTF-8 encoded lookup text; otherwise, . + + + Compares the text in a read-only character span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Compares the string text to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Gets the total number of bytes consumed so far by this instance of the . + The total number of bytes consumed so far. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the current state to pass to a constructor with more data. + The current reader state. + + + Gets a value that indicates which Value property to use to get the token value. + + if should be used to get the token value; if should be used instead. + + + Gets a value that indicates whether all the JSON data was provided or there is more data to come. + + if the reader was constructed with the input span or sequence containing the entire JSON data to process; if the reader was constructed with an input span or sequence that may contain partial JSON data with more data to follow. + + + Gets the current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + The current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + + + Gets the index that the last processed JSON token starts at (within the given UTF-8 encoded input text), skipping any white space. + The starting index of the last processed JSON token within the given UTF-8 encoded input text. + + + Gets the type of the last processed JSON token in the UTF-8 encoded JSON text. + The type of the last processed JSON token. + + + Gets a value that indicates whether the current or properties contain escape sequences per RFC 8259 section 7, and therefore require unescaping before being consumed. + + + Gets the raw value of the last processed token as a ReadOnlySequence<byte> slice of the input payload, only if the token is contained within multiple segments. + A byte read-only sequence. + + + Gets the raw value of the last processed token as a ReadOnlySpan<byte> slice of the input payload, if the token fits in a single segment or if the reader was constructed with a JSON payload contained in a ReadOnlySpan<byte>. + A read-only span of bytes. + + + Provides a high-performance API for forward-only, non-cached writing of UTF-8 encoded JSON text. + + + Initializes a new instance of the class using the specified to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Initializes a new instance of the class using the specified stream to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + + + Asynchronously commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + A task representing the asynchronous dispose operation. + + + Commits the JSON text written so far, which makes it visible to the output destination. + This instance has been disposed. + + + Asynchronously commits the JSON text written so far, which makes it visible to the output destination. + The token to monitor for cancellation requests. The default value is . + This instance has been disposed. + A task representing the asynchronous flush operation. + + + Resets the internal state of this instance so that it can be reused. + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The JSON-encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the raw bytes value as a Base64 encoded JSON string as an element of a JSON array. + The binary data to be written as a Base64 encoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON literal true or false) as an element of a JSON array. + The value to be written as a JSON literal true or false as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value as a JSON comment. + The UTF-8 encoded value to be written as a JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a UTF-16 text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a string text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + The parameter is . + + + Writes the end of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the end of a JSON object. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and the JSON literal null as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the JSON literal null as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the UTF-8 property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + is . + + + Writes the pre-encoded property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; to skip validation. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input + is not a valid, complete, single JSON value according to the JSON RFC + or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + + is . + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the beginning of a JSON array. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON array to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON array with a pre-encoded property name as the key. + The JSON encoded property name of the JSON array to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the beginning of a JSON object. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON object with a pre-encoded property name as the key. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the UTF-8 property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value (as a JSON string) as an element of a JSON array. + The UTF-8 encoded value to be written as a JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a string text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded text value (as a JSON string) as an element of a JSON array. + The JSON encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + Validation is enabled, and the write operation would produce invalid JSON. + + + Gets the total number of bytes committed to the output by the current instance so far. + The total number of bytes committed to the output by the so far. + + + Gets the number of bytes written by the so far that have not yet been flushed to the output and committed. + The number of bytes written so far by the that have not yet been flushed to the output and committed. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the custom behavior when writing JSON using this instance, which indicates whether to format the output while writing, whether to skip structural JSON validation, and which characters to escape. + The custom behavior of this instance of the writer for formatting, validating, and escaping. + + + \ No newline at end of file diff --git a/packages/System.Text.Json.8.0.0/lib/net6.0/System.Text.Json.dll b/packages/System.Text.Json.8.0.0/lib/net6.0/System.Text.Json.dll new file mode 100644 index 0000000..54332f0 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/lib/net6.0/System.Text.Json.dll differ diff --git a/packages/System.Text.Json.8.0.0/lib/net6.0/System.Text.Json.xml b/packages/System.Text.Json.8.0.0/lib/net6.0/System.Text.Json.xml new file mode 100644 index 0000000..da1a571 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/lib/net6.0/System.Text.Json.xml @@ -0,0 +1,5785 @@ + + + + System.Text.Json + + + + Defines how the struct handles comments. + + + Allows comments within the JSON input and treats them as valid tokens. While reading, the caller can access the comment values. + + + Doesn't allow comments within the JSON input. Comments are treated as invalid JSON if found, and a is thrown. This is the default value. + + + Allows comments within the JSON input and ignores them. The behaves as if no comments are present. + + + Provides a mechanism for examining the structural content of a JSON value without automatically instantiating data values. + + + Releases the resources used by this instance. + + + Parses a sequence as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses memory as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON string value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + + contains unsupported options. + A task to produce a JsonDocument representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + A JsonDocument representing the value (and nested values) read from the reader. + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + When the method returns, contains the parsed document. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonDocument; if the reader ran out of data while parsing. All other situations result in an exception being thrown. + + + Writes the document to the provided writer as a JSON value. + The writer to which to write the document. + The parameter is . + The of this would result in invalid JSON. + The parent has been disposed. + + + Gets the root element of this JSON document. + A representing the value of the document. + + + Provides the ability for the user to define custom behavior when parsing JSON to create a . + + + Gets or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma at the end of a list of JSON values in an object or array is allowed; otherwise, . Default is + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The comment handling enum is set to a value that is not supported (or not within the enum range). + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when parsing JSON data, with the default (that is, 0) indicating a maximum depth of 64. + The max depth is set to a negative value. + The maximum depth allowed when parsing JSON data. + + + Represents a specific JSON value within a . + + + Gets a JsonElement that can be safely stored beyond the lifetime of the original . + A JsonElement that can be safely stored beyond the lifetime of the original . + + + Gets an enumerator to enumerate the values in the JSON array represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the values in the JSON array represented by this JsonElement. + + + Gets an enumerator to enumerate the properties in the JSON object represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the properties in the JSON object represented by this JsonElement. + + + Gets the number of values contained within the current array value. + This value's is not . + The parent has been disposed. + The number of values contained within the current array value. + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a byte array. + This value's is not . + The value is not encoded as Base64 text and hence cannot be decoded to bytes. + The parent has been disposed. + The value decoded as a byte array. + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as an . + + + Gets a representing the value of a required property identified by . + The UTF-8 representation (with no Byte-Order-Mark (BOM)) of the name of the property to return. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + + is . + The parent has been disposed. + A representing the value of the requested property. + + + Gets a string that represents the original input data backing this value. + The parent has been disposed. + The original input data backing this value. + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + A JsonElement representing the value (and nested values) read from the reader. + + + Gets a string representation for the current value appropriate to the value type. + The parent has been disposed. + A string representation for the current value appropriate to the value type. + + + Attempts to represent the current JSON number as a . + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a byte array, assuming that it is Base64 encoded. + If the method succeeds, contains the decoded binary representation of the Base64 text. + This value's is not . + The parent has been disposed. + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The UTF-8 (with no Byte-Order-Mark (BOM)) representation of the name of the property to return. + Receives the value of the located property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, its value is assigned to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + + is . + The parent has been disposed. + + if the property was found; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Receives the parsed element. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonElement; if the reader ran out of data while parsing. + All other situations result in an exception being thrown. + + + Compares the text represented by a UTF8-encoded byte span to the string value of this element. + The UTF-8 encoded text to compare against. + This value's is not . + + if the string value of this element has the same UTF-8 encoding as + ; otherwise, . + + + Compares a specified read-only character span to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Compares a specified string to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Writes the element to the specified writer as a JSON value. + The writer to which to write the element. + The parameter is . + The of this value is . + The parent has been disposed. + + + Gets the value at the specified index if the current value is an . + The item index. + This value's is not . + + is not in the range [0, ()). + The parent has been disposed. + The value at the specified index. + + + Gets the type of the current JSON value. + The parent has been disposed. + The type of the current JSON value. + + + Represents an enumerator for the contents of a JSON array. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the array. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for an array of that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an enumerator for the properties of a JSON object. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates the properties of an object. + An enumerator that can be used to iterate through the object. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for objects that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides methods to transform UTF-8 or UTF-16 encoded text into a form that is suitable for JSON. + + + Encodes a UTF-8 text value as a JSON string. + The UTF-8 encoded text to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-8 bytes. + The encoded JSON text. + + + Encodes a specified text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Encodes the string text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is . + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Determines whether this instance and a specified object, which must also be a instance, have the same value. + The object to compare to this instance. + + if the current instance and are equal; otherwise, . + + + Determines whether this instance and another specified instance have the same value. + The object to compare to this instance. + + if this instance and have the same value; otherwise, . + + + Returns the hash code for this . + The hash code for this instance. + + + Converts the value of this instance to a . + The underlying UTF-16 encoded string. + + + Gets the UTF-8 encoded representation of the pre-encoded JSON text. + The UTF-8 encoded representation of the pre-encoded JSON text. + + + Gets the UTF-16 encoded representation of the pre-encoded JSON text as a . + + + Defines a custom exception object that is thrown when invalid JSON text is encountered, the defined maximum depth is passed, or the JSON text is not compatible with the type of a property on an object. + + + Initializes a new instance of the class. + + + Creates a new exception object with serialized data. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + is . + + + Initializes a new instance of the class with a specified error message. + The context-specific error message. + + + Initializes a new instance of the class, with a specified error message and a reference to the inner exception that is the cause of this exception. + The context-specific error message. + The exception that caused the current exception. + + + Creates a new exception object to relay error information to the user. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count within the current line (starting at 0) where the invalid JSON was encountered. + + + Creates a new exception object to relay error information to the user that includes a specified inner exception. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count (starting at 0) within the current line where the invalid JSON was encountered. + The exception that caused the current exception. + + + Sets the with information about the exception. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + + Gets the zero-based number of bytes read within the current line before the exception. + The zero-based number of bytes read within the current line before the exception. + + + Gets the zero-based number of lines read before the exception. + The zero-based number of lines read before the exception. + + + Gets a message that describes the current exception. + The error message that describes the current exception. + + + Gets The path within the JSON where the exception was encountered. + The path within the JSON where the exception was encountered. + + + Determines the naming policy used to convert a string-based name to another format, such as a camel-casing format. + + + Initializes a new instance of . + + + When overridden in a derived class, converts the specified name according to the policy. + The name to convert. + The converted name. + + + Gets the naming policy for camel-casing. + The naming policy for camel-casing. + + + Gets the naming policy for lowercase kebab-casing. + + + Gets the naming policy for uppercase kebab-casing. + + + Gets the naming policy for lowercase snake-casing. + + + Gets the naming policy for uppercase snake-casing. + + + Represents a single property for a JSON object. + + + Compares the specified UTF-8 encoded text to the name of this property. + The UTF-8 encoded text to compare against. + This value's is not . + + if the name of this property has the same UTF-8 encoding as ; otherwise, . + + + Compares the specified text as a character span to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise, . + + + Compares the specified string to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise . + + + Provides a string representation of the property for debugging purposes. + A string containing the uninterpreted value of the property, beginning at the declaring open-quote and ending at the last character that is part of the value. + + + Writes the property to the provided writer as a named JSON object property. + The writer to which to write the property. + + is . + + is too large to be a JSON object property. + The of this JSON property's would result in invalid JSON. + The parent has been disposed. + + + Gets the name of this property. + The name of this property. + + + Gets the value of this property. + The value of this property. + + + Provides the ability for the user to define custom behavior when reading JSON. + + + Gets or sets a value that defines whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma is allowed; otherwise, . + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The property is being set to a value that is not a member of the enumeration. + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when reading JSON, with the default (that is, 0) indicating a maximum depth of 64. + The maximum depth is being set to a negative value. + The maximum depth allowed when reading JSON. + + + Defines an opaque type that holds and saves all the relevant state information, which must be provided to the to continue reading after processing incomplete data. + + + Constructs a new instance. + Defines the customized behavior of the that is different from the JSON RFC (for example how to handle comments, or the maximum depth allowed when reading). By default, the follows the JSON RFC strictly (comments within the JSON are invalid) and reads up to a maximum depth of 64. + The maximum depth is set to a non-positive value (< 0). + + + Gets the custom behavior to use when reading JSON data using the struct that may deviate from strict adherence to the JSON specification, which is the default behavior. + The custom behavior to use when reading JSON data. + + + Provides functionality to serialize objects or value types to JSON and to deserialize JSON into objects or value types. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + + or is . + The JSON is invalid, + or there is remaining data in the Stream. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + + or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + The JSON is invalid, + or there is remaining data in the buffer. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + +-or- + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance specified by the . + The reader to read. + Metadata about the type to convert. + The JSON is invalid, + is not compatible with the JSON, + or a value could not be read from the reader. + + is using unsupported options. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader and converts it into an instance of a specified type. + The reader to read the JSON from. + The type of the object to convert to and return. + Options to control the serializer behavior during reading. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Options to control the behavior during reading. + The type to deserialize the JSON value into. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the UTF-8 encoded text. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the JSON value. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance of the type specified by a generic type parameter. + The reader to read the JSON from. + Options to control serializer behavior during reading. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + uses unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The that can be used to cancel the read operation. + + or is . + The JSON is invalid, + or when there is remaining data in the Stream. + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a specified type. The stream will be read to completion. + The JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + A cancellation token that may be used to cancel the read operation. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + The that can be used to cancel the read operation. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a type specified by a generic type parameter. The stream will be read to completion. + The JSON data to parse. + Options to control the behavior during reading. + A token that may be used to cancel the read operation. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + + is . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The which may be used to cancel the read operation. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Options to control the behavior during reading. + The which may be used to cancel the read operation. + The element type to deserialize asynchronously. + + is . + An representation of the provided JSON array. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Metadata about the element type to convert. + The that can be used to cancel the read operation. + The element type to deserialize asynchronously. + + or is . + An representation of the provided JSON array. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the value of a specified type into a JSON string. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + + or is . + + does not match the type of . + + + Writes the JSON representation of the specified type to the provided writer. + The JSON writer to write to. + The value to convert and write. + The type of the to convert. + Options to control serialization behavior. + + is not compatible with + + or is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + A JSON writer to write to. + The value to convert and write. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + + Converts the value of a type specified by a generic type parameter into a JSON string. + The value to convert. + Options to control serialization behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes the JSON representation of a type specified by a generic type parameter to the provided writer. + A JSON writer to write to. + The value to convert and write. + Options to control serialization behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + The type of the value to serialize. + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and writes it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + + is . + + does not match the type of . + A task that represents the asynchronous write operation. + + + Asynchronously converts the value of a specified type to UTF-8 encoded JSON text and writes it to the specified stream. + The UTF-8 stream to write to. + The value to convert. + The type of the to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + The that can be used to cancel the write operation. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Asynchronously converts a value of a type specified by a generic type parameter to UTF-8 encoded JSON text and writes it to a stream. + The UTF-8 stream to write to. + The value to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A UTF-8 representation of the value. + + + Converts a value of the specified type into a JSON string, encoded as UTF-8 bytes. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A UTF-8 representation of the value. + + + Converts the value of a type specified by a generic type parameter into a JSON string, encoded as UTF-8 bytes. + The value to convert. + Options to control the conversion behavior. + The type of the value. + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A UTF-8 representation of the value. + + + Indicates whether unconfigured instances should be set to use the reflection-based . + + + Specifies scenario-based default serialization options that can be used to construct a instance. + + + + General-purpose option values. These are the same settings that are applied if a member isn't specified. + For information about the default property values that are applied, see JsonSerializerOptions properties. + + + + + Option values appropriate to Web-based scenarios. + This member implies that: + - Property names are treated as case-insensitive. + - "camelCase" name formatting should be employed. + - Quoted numbers (JSON strings for number properties) are allowed. + + + + Provides options to be used with . + + + Initializes a new instance of the class. + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + + Copies the options from a instance to a new instance. + The options instance to copy options from. + + is . + + + Appends a new to the metadata resolution of the current instance. + The generic definition of the specified context type. + + + Returns the converter for the specified type. + The type to return a converter for. + The configured for returned an invalid converter. + There is no compatible for or its serializable members. + The first converter that supports the given type. + + + Gets the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + + is . + + is not valid for serialization. + The contract metadata resolved for . + + + Marks the current instance as read-only to prevent any further user modification. + The instance does not specify a setting. + + + Marks the current instance as read-only preventing any further user modification. + Populates unconfigured properties with the reflection-based default. + + The instance does not specify a setting. Thrown when is . + -or- + The feature switch has been turned off. + + + + Tries to get the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + When this method returns, contains the resolved contract metadata, or if the contract could not be resolved. + + is . + + is not valid for serialization. + + if a contract for was found, or otherwise. + + + Get or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being deserialized. + This property was set after serialization or deserialization has occurred. + + if an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored); otherwise. + + + Gets the list of user-defined converters that were registered. + The list of custom converters. + + + Gets a read-only, singleton instance of that uses the default configuration. + + + Gets or sets the default buffer size, in bytes, to use when creating temporary buffers. + The buffer size is less than 1. + This property was set after serialization or deserialization has occurred. + The default buffer size in bytes. + + + Gets or sets a value that determines when properties with default values are ignored during serialization or deserialization. + The default value is . + This property is set to . + This property is set after serialization or deserialization has occurred. + +-or- + + has been set to . These properties cannot be used together. + + + Gets or sets the policy used to convert a key's name to another format, such as camel-casing. + The policy used to convert a key's name to another format. + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoding. + + + Gets or sets a value that indicates whether values are ignored during serialization and deserialization. The default value is . + This property was set after serialization or deserialization has occurred. + +-or- + + has been set to a non-default value. These properties cannot be used together. + + if null values are ignored during serialization and deserialization; otherwise, . + + + Gets or sets a value that indicates whether read-only fields are ignored during serialization. A field is read-only if it is marked with the keyword. The default value is . + This property is set after serialization or deserialization has occurred. + + if read-only fields are ignored during serialization; otherwise. + + + Gets a value that indicates whether read-only properties are ignored during serialization. The default value is . + This property was set after serialization or deserialization has occurred. + + if read-only properties are ignored during serialization; otherwise, . + + + Gets or sets a value that indicates whether fields are handled during serialization and deserialization. + The default value is . + This property is set after serialization or deserialization has occurred. + + if fields are included during serialization; otherwise, . + + + Gets a value that indicates whether the current instance has been locked for user modification. + + + Gets or sets the maximum depth allowed when serializing or deserializing JSON, with the default value of 0 indicating a maximum depth of 64. + This property was set after serialization or deserialization has occurred. + The max depth is set to a negative value. + The maximum depth allowed when serializing or deserializing JSON. + + + Gets or sets an object that specifies how number types should be handled when serializing or deserializing. + This property is set after serialization or deserialization has occurred. + + + Gets or sets the preferred object creation handling for properties when deserializing JSON. + When set to , all properties that are capable of reusing the existing instance will be populated. + + + Gets or sets a value that indicates whether a property's name uses a case-insensitive comparison during deserialization. The default value is . + + if property names are compared case-insensitively; otherwise, . + + + Gets or sets a value that specifies the policy used to convert a property's name on an object to another format, such as camel-casing, or to leave property names unchanged. + A property naming policy, or to leave property names unchanged. + + + Gets or sets a value that defines how comments are handled during deserialization. + This property was set after serialization or deserialization has occurred. + The comment handling enum is set to a value that is not supported (or not within the enum range). + A value that indicates whether comments are allowed, disallowed, or skipped. + + + Gets or sets an object that specifies how object references are handled when reading and writing JSON. + + + Gets or sets the contract resolver used by this instance. + The property is set after serialization or deserialization has occurred. + + + Gets the list of chained contract resolvers used by this instance. + + + Gets or sets an object that specifies how deserializing a type declared as an is handled during deserialization. + + + Gets or sets an object that specifies how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Gets or sets a value that indicates whether JSON should use pretty printing. By default, JSON is serialized without any extra white space. + This property was set after serialization or deserialization has occurred. + + if JSON is pretty printed on serialization; otherwise, . The default is . + + + Defines the various JSON tokens that make up a JSON text. + + + The token type is a comment string. + + + The token type is the end of a JSON array. + + + The token type is the end of a JSON object. + + + The token type is the JSON literal false. + + + There is no value (as distinct from ). This is the default token type if no data has been read by the . + + + The token type is the JSON literal null. + + + The token type is a JSON number. + + + The token type is a JSON property name. + + + The token type is the start of a JSON array. + + + The token type is the start of a JSON object. + + + The token type is a JSON string. + + + The token type is the JSON literal true. + + + Specifies the data type of a JSON value. + + + A JSON array. + + + The JSON value false. + + + The JSON value null. + + + A JSON number. + + + A JSON object. + + + A JSON string. + + + The JSON value true. + + + There is no value (as distinct from ). + + + Allows the user to define custom behavior when writing JSON using the . + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoder used to override the escaping behavior. + + + Gets or sets a value that indicates whether the should format the JSON output, which includes indenting nested JSON tokens, adding new lines, and adding white space between property names and values. + + if the JSON output is formatted; if the JSON is written without any extra white space. The default is . + + + Gets or sets the maximum depth allowed when writing JSON, with the default (that is, 0) indicating a max depth of 1000. + Thrown when the max depth is set to a negative value. + + + Gets or sets a value that indicates whether the should skip structural validation and allow the user to write invalid JSON. + + if structural validation is skipped and invalid JSON is allowed; if an is thrown on any attempt to write invalid JSON. + + + Represents a mutable JSON array. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Initializes a new instance of the class that contains items from the specified array. + The items to add to the new . + + + Initializes a new instance of the class that contains items from the specified params array. + Options to control the behavior. + The items to add to the new . + + + Adds a to the end of the . + The to be added to the end of the . + + + Adds an object to the end of the . + The object to be added to the end of the . + The type of object to be added. + + + Removes all elements from the . + + + Determines whether an element is in the . + The object to locate in the . + + if is found in the ; otherwise, . + + + Initializes a new instance of the class that contains items from the specified . + The . + Options to control the behavior. + The is not a . + The new instance of the class that contains items from the specified . + + + Returns an enumerator that iterates through the . + An for the . + + + Returns an enumerable that wraps calls to . + The type of the value to obtain from the . + An enumerable iterating over values of the array. + + + The object to locate in the . + The to locate in the . + The index of item if found in the list; otherwise, -1. + + + Inserts an element into the at the specified index. + The zero-based index at which should be inserted. + The to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific from the . + The to remove from the . + + if is successfully removed; otherwise, . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + is less than 0 or is greater than . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Returns an enumerator that iterates through the . + A for the . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in the . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + The base class that represents a single node within a mutable JSON document. + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Creates a new instance of the class. All child nodes are recursively cloned. + A new cloned instance of the current node. + + + Compares the values of two nodes, including the values of all descendant nodes. + The to compare. + The to compare. + + if the tokens are equal; otherwise . + + + Returns the index of the current node from the parent . + The current parent is not a . + The index of the current node. + + + Gets the JSON path. + The JSON Path value. + + + Returns the property name of the current node from the parent object. + The current parent is not a . + The property name of the current node. + + + Gets the value for the current . + The type of the value to obtain from the . + The current cannot be represented as a {TValue}. + The current is not a or is not compatible with {TValue}. + A value converted from the instance. + + + Returns the of the current instance. + The json value kind of the current instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a nullable . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Parses a as UTF-8-encoded data representing a single JSON value into a . The Stream will be read to completion. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + is . + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Options to control the behavior. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + The from the reader. + + + Parses a as UTF-8 encoded data representing a single JSON value into a . The stream will be read to completion. + The JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + A to produce a representation of the JSON value. + + + Replaces this node with a new value. + The value that replaces this node. + The type of value to be replaced. + + + Converts the current instance to string in JSON format. + Options to control the serialization behavior. + JSON representation of current instance. + + + Gets a string representation for the current value appropriate to the node type. + A string representation for the current value appropriate to the node type. + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + The parameter is . + + + Gets or sets the element at the specified index. + The zero-based index of the element to get or set. + + is less than 0 or is greater than the number of properties. + The current is not a . + + + Gets or sets the element with the specified property name. + If the property is not found, is returned. + The name of the property to return. + + is . + The current is not a . + + + Gets the options to control the behavior. + + + Gets the parent . + If there is no parent, is returned. + A parent can either be a or a . + + + Gets the root . + + + Options to control behavior. + + + Gets or sets a value that indicates whether property names on are case insensitive. + + if property names are case insensitive; if property names are case sensitive. + + + Represents a mutable JSON object. + + + Initializes a new instance of the class that contains the specified . + The properties to be added. + Options to control the behavior. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Adds the specified property to the . + The KeyValuePair structure representing the property name and value to add to the . + An element with the same property name already exists in the . + The property name of is . + + + Adds an element with the provided property name and value to the . + The property name of the element to add. + The value of the element to add. + + is . + An element with the same property name already exists in the . + + + Removes all elements from the . + + + Determines whether the contains an element with the specified property name. + The property name to locate in the . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Initializes a new instance of the class that contains properties from the specified . + The . + Options to control the behavior. + The new instance of the class that contains properties from the specified . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Removes the element with the specified property name from the . + The property name of the element to remove. + + is . + + if the element is successfully removed; otherwise, . + + + Determines whether the contains a specific property name and reference. + The element to locate in the . + + if the contains an element with the property name; otherwise, . + + + Copies the elements of the to an array of type KeyValuePair starting at the specified array index. + The one-dimensional Array that is the destination of the elements copied from . + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Removes a key and value from the . + The KeyValuePair structure representing the property name and value to remove from the . + + if the element is successfully removed; otherwise, . + + + Gets the value associated with the specified property name. + The property name of the value to get. + When this method returns, contains the value associated with the specified property name, if the property name is found; otherwise, . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Returns the value of a property with the specified name. + The name of the property to return. + The JSON value of the property with the specified name. + + if a property with the specified name was found; otherwise, . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + Gets a collection containing the property names in the . + An containing the keys of the object that implements . + + + Gets a collection containing the property values in the . + An containing the values in the object that implements . + + + Represents a mutable JSON value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + The that will be used to serialize the value. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Tries to obtain the current JSON value and returns a value that indicates whether the operation succeeded. + When this method returns, contains the parsed value. + The type of value to obtain. + + if the value can be successfully obtained; otherwise, . + + + Specifies that the JSON type should have its method called after deserialization occurs. + + + The method that is called after deserialization. + + + Specifies that the type should have its method called before deserialization occurs. + + + The method that is called before deserialization. + + + Specifies that the type should have its method called after serialization occurs. + + + The method that is called after serialization. + + + Specifies that the type should have its method called before serialization occurs. + + + The method that is called before serialization. + + + Provides the base class for serialization attributes. + + + Creates a new instance of the . + + + When placed on a constructor, indicates that the constructor should be used to create instances of the type on deserialization. + + + Initializes a new instance of . + + + Converts an object or value to or from JSON. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + if the instance can convert the specified object type; otherwise, . + + + Gets the type being converted by the current converter instance. + + + Converts an object or value to or from JSON. + The type of object or value handled by the converter. + + + Initializes a new instance. + + + Determines whether the specified type can be converted. + The type to compare against. + + if the type can be converted; otherwise, . + + + Reads and converts the JSON to type . + The reader. + The type to convert. + An object that specifies serialization options to use. + The converted value. + + + Reads a dictionary key from a JSON property name. + The to read from. + The type to convert. + The options to use when reading the value. + The value that was converted. + + + Writes a specified value as JSON. + The writer to write to. + The value to convert to JSON. + An object that specifies serialization options to use. + + + Writes a dictionary key as a JSON property name. + The to write to. + The value to convert. The value of determines if the converter handles values. + The options to use when writing the value. + + + Gets a value that indicates whether should be passed to the converter on serialization, and whether should be passed on deserialization. + + + Gets the type being converted by the current converter instance. + + + When placed on a property or type, specifies the converter type to use. + + + Initializes a new instance of . + + + Initializes a new instance of with the specified converter type. + The type of the converter. + + + When overridden in a derived class and is , allows the derived class to create a in order to pass additional state. + The type of the converter. + The custom converter. + + + Gets the type of the , or if it was created without a type. + The type of the , or if it was created without a type. + + + Supports converting several types by using a factory pattern. + + + When overridden in a derived class, initializes a new instance of the class. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which is compatible with . + + + Gets the type being converted by the current converter instance. + + + When placed on a type declaration, indicates that the specified subtype should be opted into polymorphic serialization. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared based type. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + A derived type that should be supported in polymorphic serialization of the declared base type. + + + The type discriminator identifier to be used for the serialization of the subtype. + + + When placed on a property of type , any properties that do not have a matching member are added to that dictionary during deserialization and written during serialization. + + + Initializes a new instance of the class. + + + Prevents a property from being serialized or deserialized. + + + Initializes a new instance of . + + + Gets or sets the condition that must be met before a property will be ignored. + + + Controls how the ignores properties on serialization and deserialization. + + + Property is always ignored. + + + Property is always serialized and deserialized, regardless of configuration. + + + Property is ignored only if it equals the default value for its type. + + + Property is ignored if its value is . This is applied only to reference-type properties and fields. + + + Indicates that the member should be included for serialization and deserialization. + The attribute is applied to a non-public property. + + + Initializes a new instance of . + + + The to be used at run time. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that JSON property names should not be converted. + + + Converter to convert enums to and from numeric values. + The enum type that this converter targets. + + + Initializes a new instance of . + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Determines how handles numbers when serializing and deserializing. + + + The "NaN", "Infinity", and "-Infinity" tokens can be read as floating-point constants, and the and values for these constants will be written as their corresponding JSON string representations. + + + Numbers can be read from tokens. Does not prevent numbers from being read from token. + + + Numbers will only be read from tokens and will only be written as JSON numbers (without quotes). + + + Numbers will be written as JSON strings (with quotes), not as JSON numbers. + + + When placed on a type, property, or field, indicates what settings should be used when serializing or deserializing numbers. + + + Initializes a new instance of . + A bitwise combination of the enumeration values that specify how number types should be handled when serializing or deserializing. + + + Indicates what settings should be used when serializing or deserializing numbers. + An object that determines the number serialization and deserialization settings. + + + Determines how deserialization will handle object creation for fields or properties. + + + Attempt to populate any instances already found on a deserialized field or property. + + + A new instance will always be created when deserializing a field or property. + + + Determines how deserialization handles object creation for fields or properties. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the configuration to use when deserializing members. + + + When placed on a type, indicates that the type should be serialized polymorphically. + + + Creates a new instance. + + + Gets or sets a value that indicates whether the deserializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + + to instruct the deserializer to ignore any unrecognized type discriminator IDs and revert to the contract of the base type; to fail the deserialization for unrecognized type discriminator IDs. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + + + Specifies the property name that is present in the JSON when serializing and deserializing. This overrides any naming policy specified by . + + + Initializes a new instance of with the specified property name. + The name of the property. + + + Gets the name of the property. + The name of the property. + + + Specifies the property order that is present in the JSON when serializing. Lower values are serialized first. + If the attribute is not specified, the default value is 0. + + + Initializes a new instance of with the specified order. + The order of the property. + + + Gets the serialization order of the property. + The serialization order of the property. + + + Indicates that the annotated member must bind to a JSON property on deserialization. + + + Initializes a new instance of . + + + Instructs the System.Text.Json source generator to generate source code to help optimize performance when serializing and deserializing instances of the specified type and types in its object graph. + + + Initializes a new instance of with the specified type. + The type to generate source code for. + + + Gets or sets the mode that indicates what the source generator should generate for the type. If the value is , then the setting specified on will be used. + + + Gets or sets the name of the property for the generated for the type on the generated, derived type. + + + Provides metadata about a set of types that is relevant to JSON serialization. + + + Creates an instance of and binds it with the indicated . + The run time provided options for the context instance. + + + Gets metadata for the specified type. + The type to fetch metadata for. + The metadata for the specified type, or if the context has no metadata for the type. + + + Resolves a contract for the requested type and options. + The type to be resolved. + The configuration to use when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Gets the default run-time options for the context. + + + Gets the run-time specified options of the context. If no options were passed when instantiating the context, then a new instance is bound and returned. + + + The generation mode for the System.Text.Json source generator. + + + When specified on , indicates that both type-metadata initialization logic and optimized serialization logic should be generated for all types. When specified on , indicates that the setting on should be used. + + + Instructs the JSON source generator to generate type-metadata initialization logic. + + + Instructs the JSON source generator to generate optimized serialization logic. + + + Instructs the System.Text.Json source generator to assume the specified options will be used at run time via . + + + Initializes a new instance of . + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + is invalid. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default ignore condition. + + + Gets or sets the default value of . + + + Gets or sets the source generation mode for types that don't explicitly set the mode with . + + + Gets or sets a value that indicates whether to ignore read-only fields. + + + Gets or sets a value that indicates whether to ignore read-only properties. + + + Gets or sets a value that indicates whether to include fields for serialization and deserialization. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a built-in naming policy to convert JSON property names with. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a value that indicates whether the source generator defaults to instead of numeric serialization for all enum types encountered in its type graph. + + + Gets or sets a value that indicates whether JSON output is pretty-printed. + + + Converts enumeration values to and from strings. + + + Initializes an instance of the class with the default naming policy that allows integer values. + + + Initializes an instance of the class with a specified naming policy and a value that indicates whether undefined enumeration values are allowed. + The optional naming policy for writing enum values. + + to allow undefined enum values; otherwise, . When , if an enum value isn't defined, it will output as a number rather than a string. + + + Determines whether the specified type can be converted to an enum. + The type to be checked. + + true if the type can be converted; otherwise, false. + + + Creates a converter for the specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Converter to convert enums to and from strings. + The enum type that this converter targets. + + + Initializes a new instance of with the default naming policy and that allows integer values. + + + Initializes a new instance of . + Optional naming policy for writing enum values. + + to allow undefined enum values. When , if an enum value isn't defined, it outputs as a number rather than a string. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Defines how objects of a derived runtime type that has not been explicitly declared for polymorphic serialization should be handled. + + + An object of undeclared runtime type will fail polymorphic serialization. + + + An object of undeclared runtime type will fall back to the serialization contract of the base type. + + + An object of undeclared runtime type will revert to the serialization contract of the nearest declared ancestor type. + Certain interface hierarchies are not supported due to diamond ambiguity constraints. + + + Defines how deserializing a type declared as an is handled during deserialization. + + + A type declared as is deserialized as a . + + + A type declared as is deserialized as a . + + + Determines how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Throws an exception when an unmapped property is encountered. + + + Silently skips any unmapped properties. This is the default behavior. + + + When placed on a type, determines the configuration for the specific type, overriding the global setting. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the unmapped member handling setting for the attribute. + + + Defines the default, reflection-based JSON contract resolver used by System.Text.Json. + + + Creates a mutable instance. + + + Resolves a JSON contract for a given and configuration. + The type for which to resolve a JSON contract. + A instance used to determine contract configuration. + + or is . + A defining a reflection-derived JSON contract for . + + + Gets a list of user-defined callbacks that can be used to modify the initial contract. + + + Used to resolve the JSON serialization contract for requested types. + + + Resolves a contract for the requested type and options. + Type to be resolved. + Configuration used when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Provides serialization metadata about a collection type. + The collection type. + + + + A instance representing the element type. + + + If a dictionary type, the instance representing the key type. + + + The option to apply to number collection elements. + + + A to create an instance of the collection when deserializing. + + + An optimized serialization implementation assuming pre-determined defaults. + + + Represents a supported derived type defined in the metadata of a polymorphic type. + + + Initializes a new instance of the class that represents a supported derived type without a type discriminator. + The derived type to be supported by the polymorphic type metadata. + + + Initializes a new instance of the class that represents a supported derived type with an integer type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Initializes a new instance of the class that represents a supported derived type with a string type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Gets a derived type that should be supported in polymorphic serialization of the declared base type. + + + Gets the type discriminator identifier to be used for the serialization of the subtype. + + + Provides helpers to create and initialize metadata for JSON-serializable types. + + + Creates serialization metadata for an array. + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates serialization metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for and types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for non-dictionary immutable collection types. + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a complex class or struct. + The to use for serialization and deserialization. + Provides serialization metadata about an object type with constructors, properties, and fields. + The type of the class or struct. + + or is . + A instance representing the class or struct. + + + Creates metadata for a property or field. + The to use for serialization and deserialization. + Provides serialization metadata about the property or field. + The type that the converter for the property returns or accepts when converting JSON data. + A instance initialized with the provided metadata. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a primitive or a type with a custom converter. + The to use for serialization and deserialization. + + The generic type definition. + A instance representing the type. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the enum type. + A instance that converts values. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the underlying nullable type. + A instance that converts values + + + Creates a instance that converts values. + Serialization metadata for the underlying nullable type. + The generic definition for the underlying nullable type. + A instance that converts values + + + Gets a type converter that throws a . + The generic definition for the type. + A instance that throws + + + Gets an object that converts values. + + + Gets an object that converts byte array values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + An instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Provides serialization metadata about an object type with constructors, properties, and fields. + The object type to serialize or deserialize. + + + + Provides a mechanism to initialize metadata for a parameterized constructor of the class or struct to be used when deserializing. + + + Gets or sets an object that specifies how number properties and fields should be processed when serializing and deserializing. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterless constructor during deserialization. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterized constructor during deserialization. + + + Gets or sets a mechanism to initialize metadata for properties and fields of the class or struct. + + + Gets or sets a serialization implementation for instances of the class or struct that assumes options specified by . + + + Provides information about a constructor parameter required for JSON deserialization. + + + + Gets or sets the default value of the parameter. + + + Gets or sets a value that specifies whether a default value was specified for the parameter. + + + Gets or sets the name of the parameter. + + + Gets or sets the type of the parameter. + + + Gets or sets the zero-based position of the parameter in the formal parameter list. + + + Defines polymorphic configuration for a specified base type. + + + Creates an empty instance. + + + Gets the list of derived types supported in the current polymorphic type configuration. + + + Gets or sets a value that indicates whether the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + The parent instance has been locked for further modification. + + if the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type; if the deserialization should fail when an unrecognized type discriminator ID is encountered. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + The parent instance has been locked for further modification. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + The parent instance has been locked for further modification. + + + Provides JSON serialization-related metadata about a property or field. + + + Gets or sets the custom attribute provider for the current property. + The instance has been locked for further modification. + + + Gets or sets a custom converter override for the current property. + The instance has been locked for further modification. + + + Gets or sets a getter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a value that indicates whether the current property is a special extension data property. + The instance has been locked for further modification. + +-or- + +The current is not valid for use with extension data. + + + Gets or sets a value that indicates whether the current property is required for deserialization to be successful. + The instance has been locked for further modification. + + + Gets or sets the JSON property name used when serializing the property. + + is . + The instance has been locked for further modification. + + + Gets or sets the applied to the current property. + The instance has been locked for further modification. + + + Gets or sets a value indicating if the property or field should be replaced or populated during deserialization. + + + Gets the value associated with the current contract instance. + + + Gets or sets the serialization order for the current property. + The instance has been locked for further modification. + + + Gets the type of the current property. + + + Gets or sets a setter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a predicate that determines whether the current property value should be serialized. + The instance has been locked for further modification. + + + Provides serialization metadata about a property or field. + The type to convert of the for the property. + + + + A for the property or field, specified by . + + + The declaring type of the property or field. + + + Provides a mechanism to get the property or field's value. + + + Whether the property was annotated with . + + + Specifies a condition for the member to be ignored. + + + Whether the property was annotated with . + + + If , indicates that the member is a property, otherwise indicates the member is a field. + + + Whether the property or field is public. + + + Whether the property or field is a virtual property. + + + The name to be used when processing the property or field, specified by . + + + If the property or field is a number, specifies how it should processed when serializing and deserializing. + + + The name of the property or field. + + + The info for the property or field's type. + + + Provides a mechanism to set the property or field's value. + + + Provides JSON serialization-related metadata about a type. + + + Creates a blank instance for the current . + The declared type for the property. + The property name used in JSON serialization and deserialization. + + or is . + + cannot be used for serialization. + The instance has been locked for further modification. + A blank instance. + + + Creates a blank instance. + The type for which contract metadata is specified. + The instance the metadata is associated with. + + or is . + + cannot be used for serialization. + A blank instance. + + + Creates a blank instance. + The instance the metadata is associated with. + The type for which contract metadata is specified. + + is . + A blank instance. + + + Locks the current instance for further modification. + + + Gets the associated with the current type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Gets a value that indicates whether the current instance has been locked for modification. + + + Gets a value that describes the kind of contract metadata that the current instance specifies. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + An invalid value was specified. + + + Gets or sets a callback to be invoked after deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked after serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets the value associated with the current instance. + + + Gets or sets the from which this metadata instance originated. + The instance has been locked for further modification. + + + Gets or sets a configuration object specifying polymorphism metadata. + + has been associated with a different instance. + The instance has been locked for further modification. + +-or- + +Polymorphic serialization is not supported for the current metadata . + + + Gets or sets the preferred value for properties contained in the type. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for JsonTypeInfoKind.Object. + Specified an invalid value. + + + Gets the list of metadata corresponding to the current type. + + + Gets the for which the JSON serialization contract is being defined. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for . + An invalid value was specified. + + + Provides JSON serialization-related metadata about a type. + The generic definition of the type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Serializes an instance of using values specified at design time. + + + Describes the kind of contract metadata a specifies. + + + Type is serialized as a dictionary with key/value pair entries. + + + Type is serialized as a collection with elements. + + + Type is either a simple value or uses a custom converter. + + + Type is serialized as an object with properties. + + + Contains utilities and combinators acting on . + + + Combines multiple sources into one. + Sequence of contract resolvers to be queried for metadata. + + is . + A combining results from . + + + Creates a resolver and applies modifications to the metadata generated by the source . + The source resolver generating metadata. + The delegate that modifies non- results. + A new instance with modifications applied. + + + Defines how the deals with references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Returns the used for each serialization call. + The resolver to use for serialization and deserialization. + + + Gets an object that indicates whether an object is ignored when a reference cycle is detected during serialization. + + + Gets an object that indicates whether metadata properties are honored when JSON objects and arrays are deserialized into reference types, and written when reference types are serialized. This is necessary to create round-trippable JSON from objects that contain cycles or duplicate references. + + + Defines how the deals with references on serialization and deserialization. + The type of the to create on each serialization or deserialization call. + + + Initializes a new instance of the generic class that can create a instance of the specified type. + + + Creates a new of type used for each serialization call. + The new resolver to use for serialization and deserialization. + + + Defines how the deals with references on serialization and deserialization. + Defines the core behavior of preserving references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Adds an entry to the bag of references using the specified id and value. + This method gets called when an $id metadata property from a JSON object is read. + The identifier of the JSON object or array. + The value of the CLR reference type object that results from parsing the JSON object. + + + Gets the reference identifier of the specified value if exists; otherwise a new id is assigned. + This method gets called before a CLR object is written so we can decide whether to write $id and enumerate the rest of its properties or $ref and step into the next object. + The value of the CLR reference type object to get an id for. + When this method returns, if a reference to value already exists; otherwise, . + The reference id for the specified object. + + + Returns the CLR reference type object related to the specified reference id. + This method gets called when $ref metadata property is read. + The reference id related to the returned object. + The reference type object related to the specified reference id. + + + Provides a high-performance API for forward-only, read-only access to UTF-8 encoded JSON text. + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Copies the current JSON token value from the source, unescaped, as UTF-8 bytes to a buffer. + A buffer to write the unescaped UTF-8 bytes into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of bytes written to . + + + Copies the current JSON token value from the source, unescaped, as UTF-16 characters to a buffer. + A buffer to write the transcoded UTF-16 characters into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of characters written to . + + + Reads the next JSON token value from the source as a . + The value of the JSON token isn't a Boolean value (that is, or ). + + if the is ; if the is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Byte.MinValue or greater than Byte.MaxValue. + The value of the UTF-8 encoded token. + + + Parses the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array. + The type of the JSON token is not a . + The value is not encoded as Base64 text, so it can't be decoded to bytes. + +-or- + +The value contains invalid or more than two padding characters. + +-or- + +The value is incomplete. That is, the JSON string length is not a multiple of 4. + The byte array that represents the current JSON token value. + + + Parses the current JSON token value from the source as a comment and transcodes it as a . + The JSON token is not a comment. + The comment that represents the current JSON token value. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time offset, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Decimal.MinValue or greater than Decimal.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Double.MinValue or greater than Double.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value is in an unsupported format for a Guid. + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + The GUID value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Int16.MinValue or greater than Int16.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int32.MinValue or greater than Int32.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int64.MinValue or greater than Int64.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Parses the current JSON token value from the source as an . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than SByte.MinValue or greater than SByte.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Single.MinValue or greater than Single.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source unescaped and transcodes it as a string. + The JSON token value isn't a string (that is, not a , , or ). + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The token value parsed to a string, or if is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than UInt16.MinValue or greater than UInt16.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt32.MinValue or greater than UInt32.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt64.MinValue or greater than UInt64.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token from the input source. + An invalid JSON token according to the JSON RFC is encountered. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + if the token was read successfully; otherwise, . + + + Skips the children of the current JSON token. + The reader was given partial data with more data to follow (that is, is ). + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decoded binary representation of the Base64 text. + The JSON token is not a . + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to skip the children of the current JSON token. + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or - + +The current depth exceeds the recursive limit set by the maximum depth. + + if there was enough data for the children to be skipped successfully; otherwise, . + + + Compares the UTF-8 encoded text in a read-only byte span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The UTF-8 encoded text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the UTF-8 encoded lookup text; otherwise, . + + + Compares the text in a read-only character span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Compares the string text to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Gets the total number of bytes consumed so far by this instance of the . + The total number of bytes consumed so far. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the current state to pass to a constructor with more data. + The current reader state. + + + Gets a value that indicates which Value property to use to get the token value. + + if should be used to get the token value; if should be used instead. + + + Gets a value that indicates whether all the JSON data was provided or there is more data to come. + + if the reader was constructed with the input span or sequence containing the entire JSON data to process; if the reader was constructed with an input span or sequence that may contain partial JSON data with more data to follow. + + + Gets the current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + The current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + + + Gets the index that the last processed JSON token starts at (within the given UTF-8 encoded input text), skipping any white space. + The starting index of the last processed JSON token within the given UTF-8 encoded input text. + + + Gets the type of the last processed JSON token in the UTF-8 encoded JSON text. + The type of the last processed JSON token. + + + Gets a value that indicates whether the current or properties contain escape sequences per RFC 8259 section 7, and therefore require unescaping before being consumed. + + + Gets the raw value of the last processed token as a ReadOnlySequence<byte> slice of the input payload, only if the token is contained within multiple segments. + A byte read-only sequence. + + + Gets the raw value of the last processed token as a ReadOnlySpan<byte> slice of the input payload, if the token fits in a single segment or if the reader was constructed with a JSON payload contained in a ReadOnlySpan<byte>. + A read-only span of bytes. + + + Provides a high-performance API for forward-only, non-cached writing of UTF-8 encoded JSON text. + + + Initializes a new instance of the class using the specified to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Initializes a new instance of the class using the specified stream to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + + + Asynchronously commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + A task representing the asynchronous dispose operation. + + + Commits the JSON text written so far, which makes it visible to the output destination. + This instance has been disposed. + + + Asynchronously commits the JSON text written so far, which makes it visible to the output destination. + The token to monitor for cancellation requests. The default value is . + This instance has been disposed. + A task representing the asynchronous flush operation. + + + Resets the internal state of this instance so that it can be reused. + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The JSON-encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the raw bytes value as a Base64 encoded JSON string as an element of a JSON array. + The binary data to be written as a Base64 encoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON literal true or false) as an element of a JSON array. + The value to be written as a JSON literal true or false as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value as a JSON comment. + The UTF-8 encoded value to be written as a JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a UTF-16 text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a string text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + The parameter is . + + + Writes the end of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the end of a JSON object. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and the JSON literal null as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the JSON literal null as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the UTF-8 property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + is . + + + Writes the pre-encoded property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; to skip validation. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input + is not a valid, complete, single JSON value according to the JSON RFC + or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + + is . + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the beginning of a JSON array. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON array to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON array with a pre-encoded property name as the key. + The JSON encoded property name of the JSON array to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the beginning of a JSON object. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON object with a pre-encoded property name as the key. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the UTF-8 property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value (as a JSON string) as an element of a JSON array. + The UTF-8 encoded value to be written as a JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a string text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded text value (as a JSON string) as an element of a JSON array. + The JSON encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + Validation is enabled, and the write operation would produce invalid JSON. + + + Gets the total number of bytes committed to the output by the current instance so far. + The total number of bytes committed to the output by the so far. + + + Gets the number of bytes written by the so far that have not yet been flushed to the output and committed. + The number of bytes written so far by the that have not yet been flushed to the output and committed. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the custom behavior when writing JSON using this instance, which indicates whether to format the output while writing, whether to skip structural JSON validation, and which characters to escape. + The custom behavior of this instance of the writer for formatting, validating, and escaping. + + + \ No newline at end of file diff --git a/packages/System.Text.Json.8.0.0/lib/net7.0/System.Text.Json.dll b/packages/System.Text.Json.8.0.0/lib/net7.0/System.Text.Json.dll new file mode 100644 index 0000000..f36934f Binary files /dev/null and b/packages/System.Text.Json.8.0.0/lib/net7.0/System.Text.Json.dll differ diff --git a/packages/System.Text.Json.8.0.0/lib/net7.0/System.Text.Json.xml b/packages/System.Text.Json.8.0.0/lib/net7.0/System.Text.Json.xml new file mode 100644 index 0000000..da1a571 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/lib/net7.0/System.Text.Json.xml @@ -0,0 +1,5785 @@ + + + + System.Text.Json + + + + Defines how the struct handles comments. + + + Allows comments within the JSON input and treats them as valid tokens. While reading, the caller can access the comment values. + + + Doesn't allow comments within the JSON input. Comments are treated as invalid JSON if found, and a is thrown. This is the default value. + + + Allows comments within the JSON input and ignores them. The behaves as if no comments are present. + + + Provides a mechanism for examining the structural content of a JSON value without automatically instantiating data values. + + + Releases the resources used by this instance. + + + Parses a sequence as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses memory as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON string value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + + contains unsupported options. + A task to produce a JsonDocument representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + A JsonDocument representing the value (and nested values) read from the reader. + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + When the method returns, contains the parsed document. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonDocument; if the reader ran out of data while parsing. All other situations result in an exception being thrown. + + + Writes the document to the provided writer as a JSON value. + The writer to which to write the document. + The parameter is . + The of this would result in invalid JSON. + The parent has been disposed. + + + Gets the root element of this JSON document. + A representing the value of the document. + + + Provides the ability for the user to define custom behavior when parsing JSON to create a . + + + Gets or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma at the end of a list of JSON values in an object or array is allowed; otherwise, . Default is + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The comment handling enum is set to a value that is not supported (or not within the enum range). + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when parsing JSON data, with the default (that is, 0) indicating a maximum depth of 64. + The max depth is set to a negative value. + The maximum depth allowed when parsing JSON data. + + + Represents a specific JSON value within a . + + + Gets a JsonElement that can be safely stored beyond the lifetime of the original . + A JsonElement that can be safely stored beyond the lifetime of the original . + + + Gets an enumerator to enumerate the values in the JSON array represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the values in the JSON array represented by this JsonElement. + + + Gets an enumerator to enumerate the properties in the JSON object represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the properties in the JSON object represented by this JsonElement. + + + Gets the number of values contained within the current array value. + This value's is not . + The parent has been disposed. + The number of values contained within the current array value. + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a byte array. + This value's is not . + The value is not encoded as Base64 text and hence cannot be decoded to bytes. + The parent has been disposed. + The value decoded as a byte array. + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as an . + + + Gets a representing the value of a required property identified by . + The UTF-8 representation (with no Byte-Order-Mark (BOM)) of the name of the property to return. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + + is . + The parent has been disposed. + A representing the value of the requested property. + + + Gets a string that represents the original input data backing this value. + The parent has been disposed. + The original input data backing this value. + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + A JsonElement representing the value (and nested values) read from the reader. + + + Gets a string representation for the current value appropriate to the value type. + The parent has been disposed. + A string representation for the current value appropriate to the value type. + + + Attempts to represent the current JSON number as a . + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a byte array, assuming that it is Base64 encoded. + If the method succeeds, contains the decoded binary representation of the Base64 text. + This value's is not . + The parent has been disposed. + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The UTF-8 (with no Byte-Order-Mark (BOM)) representation of the name of the property to return. + Receives the value of the located property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, its value is assigned to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + + is . + The parent has been disposed. + + if the property was found; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Receives the parsed element. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonElement; if the reader ran out of data while parsing. + All other situations result in an exception being thrown. + + + Compares the text represented by a UTF8-encoded byte span to the string value of this element. + The UTF-8 encoded text to compare against. + This value's is not . + + if the string value of this element has the same UTF-8 encoding as + ; otherwise, . + + + Compares a specified read-only character span to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Compares a specified string to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Writes the element to the specified writer as a JSON value. + The writer to which to write the element. + The parameter is . + The of this value is . + The parent has been disposed. + + + Gets the value at the specified index if the current value is an . + The item index. + This value's is not . + + is not in the range [0, ()). + The parent has been disposed. + The value at the specified index. + + + Gets the type of the current JSON value. + The parent has been disposed. + The type of the current JSON value. + + + Represents an enumerator for the contents of a JSON array. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the array. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for an array of that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an enumerator for the properties of a JSON object. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates the properties of an object. + An enumerator that can be used to iterate through the object. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for objects that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides methods to transform UTF-8 or UTF-16 encoded text into a form that is suitable for JSON. + + + Encodes a UTF-8 text value as a JSON string. + The UTF-8 encoded text to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-8 bytes. + The encoded JSON text. + + + Encodes a specified text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Encodes the string text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is . + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Determines whether this instance and a specified object, which must also be a instance, have the same value. + The object to compare to this instance. + + if the current instance and are equal; otherwise, . + + + Determines whether this instance and another specified instance have the same value. + The object to compare to this instance. + + if this instance and have the same value; otherwise, . + + + Returns the hash code for this . + The hash code for this instance. + + + Converts the value of this instance to a . + The underlying UTF-16 encoded string. + + + Gets the UTF-8 encoded representation of the pre-encoded JSON text. + The UTF-8 encoded representation of the pre-encoded JSON text. + + + Gets the UTF-16 encoded representation of the pre-encoded JSON text as a . + + + Defines a custom exception object that is thrown when invalid JSON text is encountered, the defined maximum depth is passed, or the JSON text is not compatible with the type of a property on an object. + + + Initializes a new instance of the class. + + + Creates a new exception object with serialized data. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + is . + + + Initializes a new instance of the class with a specified error message. + The context-specific error message. + + + Initializes a new instance of the class, with a specified error message and a reference to the inner exception that is the cause of this exception. + The context-specific error message. + The exception that caused the current exception. + + + Creates a new exception object to relay error information to the user. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count within the current line (starting at 0) where the invalid JSON was encountered. + + + Creates a new exception object to relay error information to the user that includes a specified inner exception. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count (starting at 0) within the current line where the invalid JSON was encountered. + The exception that caused the current exception. + + + Sets the with information about the exception. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + + Gets the zero-based number of bytes read within the current line before the exception. + The zero-based number of bytes read within the current line before the exception. + + + Gets the zero-based number of lines read before the exception. + The zero-based number of lines read before the exception. + + + Gets a message that describes the current exception. + The error message that describes the current exception. + + + Gets The path within the JSON where the exception was encountered. + The path within the JSON where the exception was encountered. + + + Determines the naming policy used to convert a string-based name to another format, such as a camel-casing format. + + + Initializes a new instance of . + + + When overridden in a derived class, converts the specified name according to the policy. + The name to convert. + The converted name. + + + Gets the naming policy for camel-casing. + The naming policy for camel-casing. + + + Gets the naming policy for lowercase kebab-casing. + + + Gets the naming policy for uppercase kebab-casing. + + + Gets the naming policy for lowercase snake-casing. + + + Gets the naming policy for uppercase snake-casing. + + + Represents a single property for a JSON object. + + + Compares the specified UTF-8 encoded text to the name of this property. + The UTF-8 encoded text to compare against. + This value's is not . + + if the name of this property has the same UTF-8 encoding as ; otherwise, . + + + Compares the specified text as a character span to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise, . + + + Compares the specified string to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise . + + + Provides a string representation of the property for debugging purposes. + A string containing the uninterpreted value of the property, beginning at the declaring open-quote and ending at the last character that is part of the value. + + + Writes the property to the provided writer as a named JSON object property. + The writer to which to write the property. + + is . + + is too large to be a JSON object property. + The of this JSON property's would result in invalid JSON. + The parent has been disposed. + + + Gets the name of this property. + The name of this property. + + + Gets the value of this property. + The value of this property. + + + Provides the ability for the user to define custom behavior when reading JSON. + + + Gets or sets a value that defines whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma is allowed; otherwise, . + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The property is being set to a value that is not a member of the enumeration. + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when reading JSON, with the default (that is, 0) indicating a maximum depth of 64. + The maximum depth is being set to a negative value. + The maximum depth allowed when reading JSON. + + + Defines an opaque type that holds and saves all the relevant state information, which must be provided to the to continue reading after processing incomplete data. + + + Constructs a new instance. + Defines the customized behavior of the that is different from the JSON RFC (for example how to handle comments, or the maximum depth allowed when reading). By default, the follows the JSON RFC strictly (comments within the JSON are invalid) and reads up to a maximum depth of 64. + The maximum depth is set to a non-positive value (< 0). + + + Gets the custom behavior to use when reading JSON data using the struct that may deviate from strict adherence to the JSON specification, which is the default behavior. + The custom behavior to use when reading JSON data. + + + Provides functionality to serialize objects or value types to JSON and to deserialize JSON into objects or value types. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + + or is . + The JSON is invalid, + or there is remaining data in the Stream. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + + or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + The JSON is invalid, + or there is remaining data in the buffer. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + +-or- + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance specified by the . + The reader to read. + Metadata about the type to convert. + The JSON is invalid, + is not compatible with the JSON, + or a value could not be read from the reader. + + is using unsupported options. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader and converts it into an instance of a specified type. + The reader to read the JSON from. + The type of the object to convert to and return. + Options to control the serializer behavior during reading. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Options to control the behavior during reading. + The type to deserialize the JSON value into. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the UTF-8 encoded text. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the JSON value. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance of the type specified by a generic type parameter. + The reader to read the JSON from. + Options to control serializer behavior during reading. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + uses unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The that can be used to cancel the read operation. + + or is . + The JSON is invalid, + or when there is remaining data in the Stream. + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a specified type. The stream will be read to completion. + The JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + A cancellation token that may be used to cancel the read operation. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + The that can be used to cancel the read operation. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a type specified by a generic type parameter. The stream will be read to completion. + The JSON data to parse. + Options to control the behavior during reading. + A token that may be used to cancel the read operation. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + + is . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The which may be used to cancel the read operation. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Options to control the behavior during reading. + The which may be used to cancel the read operation. + The element type to deserialize asynchronously. + + is . + An representation of the provided JSON array. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Metadata about the element type to convert. + The that can be used to cancel the read operation. + The element type to deserialize asynchronously. + + or is . + An representation of the provided JSON array. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the value of a specified type into a JSON string. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + + or is . + + does not match the type of . + + + Writes the JSON representation of the specified type to the provided writer. + The JSON writer to write to. + The value to convert and write. + The type of the to convert. + Options to control serialization behavior. + + is not compatible with + + or is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + A JSON writer to write to. + The value to convert and write. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + + Converts the value of a type specified by a generic type parameter into a JSON string. + The value to convert. + Options to control serialization behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes the JSON representation of a type specified by a generic type parameter to the provided writer. + A JSON writer to write to. + The value to convert and write. + Options to control serialization behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + The type of the value to serialize. + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and writes it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + + is . + + does not match the type of . + A task that represents the asynchronous write operation. + + + Asynchronously converts the value of a specified type to UTF-8 encoded JSON text and writes it to the specified stream. + The UTF-8 stream to write to. + The value to convert. + The type of the to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + The that can be used to cancel the write operation. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Asynchronously converts a value of a type specified by a generic type parameter to UTF-8 encoded JSON text and writes it to a stream. + The UTF-8 stream to write to. + The value to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A UTF-8 representation of the value. + + + Converts a value of the specified type into a JSON string, encoded as UTF-8 bytes. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A UTF-8 representation of the value. + + + Converts the value of a type specified by a generic type parameter into a JSON string, encoded as UTF-8 bytes. + The value to convert. + Options to control the conversion behavior. + The type of the value. + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A UTF-8 representation of the value. + + + Indicates whether unconfigured instances should be set to use the reflection-based . + + + Specifies scenario-based default serialization options that can be used to construct a instance. + + + + General-purpose option values. These are the same settings that are applied if a member isn't specified. + For information about the default property values that are applied, see JsonSerializerOptions properties. + + + + + Option values appropriate to Web-based scenarios. + This member implies that: + - Property names are treated as case-insensitive. + - "camelCase" name formatting should be employed. + - Quoted numbers (JSON strings for number properties) are allowed. + + + + Provides options to be used with . + + + Initializes a new instance of the class. + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + + Copies the options from a instance to a new instance. + The options instance to copy options from. + + is . + + + Appends a new to the metadata resolution of the current instance. + The generic definition of the specified context type. + + + Returns the converter for the specified type. + The type to return a converter for. + The configured for returned an invalid converter. + There is no compatible for or its serializable members. + The first converter that supports the given type. + + + Gets the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + + is . + + is not valid for serialization. + The contract metadata resolved for . + + + Marks the current instance as read-only to prevent any further user modification. + The instance does not specify a setting. + + + Marks the current instance as read-only preventing any further user modification. + Populates unconfigured properties with the reflection-based default. + + The instance does not specify a setting. Thrown when is . + -or- + The feature switch has been turned off. + + + + Tries to get the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + When this method returns, contains the resolved contract metadata, or if the contract could not be resolved. + + is . + + is not valid for serialization. + + if a contract for was found, or otherwise. + + + Get or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being deserialized. + This property was set after serialization or deserialization has occurred. + + if an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored); otherwise. + + + Gets the list of user-defined converters that were registered. + The list of custom converters. + + + Gets a read-only, singleton instance of that uses the default configuration. + + + Gets or sets the default buffer size, in bytes, to use when creating temporary buffers. + The buffer size is less than 1. + This property was set after serialization or deserialization has occurred. + The default buffer size in bytes. + + + Gets or sets a value that determines when properties with default values are ignored during serialization or deserialization. + The default value is . + This property is set to . + This property is set after serialization or deserialization has occurred. + +-or- + + has been set to . These properties cannot be used together. + + + Gets or sets the policy used to convert a key's name to another format, such as camel-casing. + The policy used to convert a key's name to another format. + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoding. + + + Gets or sets a value that indicates whether values are ignored during serialization and deserialization. The default value is . + This property was set after serialization or deserialization has occurred. + +-or- + + has been set to a non-default value. These properties cannot be used together. + + if null values are ignored during serialization and deserialization; otherwise, . + + + Gets or sets a value that indicates whether read-only fields are ignored during serialization. A field is read-only if it is marked with the keyword. The default value is . + This property is set after serialization or deserialization has occurred. + + if read-only fields are ignored during serialization; otherwise. + + + Gets a value that indicates whether read-only properties are ignored during serialization. The default value is . + This property was set after serialization or deserialization has occurred. + + if read-only properties are ignored during serialization; otherwise, . + + + Gets or sets a value that indicates whether fields are handled during serialization and deserialization. + The default value is . + This property is set after serialization or deserialization has occurred. + + if fields are included during serialization; otherwise, . + + + Gets a value that indicates whether the current instance has been locked for user modification. + + + Gets or sets the maximum depth allowed when serializing or deserializing JSON, with the default value of 0 indicating a maximum depth of 64. + This property was set after serialization or deserialization has occurred. + The max depth is set to a negative value. + The maximum depth allowed when serializing or deserializing JSON. + + + Gets or sets an object that specifies how number types should be handled when serializing or deserializing. + This property is set after serialization or deserialization has occurred. + + + Gets or sets the preferred object creation handling for properties when deserializing JSON. + When set to , all properties that are capable of reusing the existing instance will be populated. + + + Gets or sets a value that indicates whether a property's name uses a case-insensitive comparison during deserialization. The default value is . + + if property names are compared case-insensitively; otherwise, . + + + Gets or sets a value that specifies the policy used to convert a property's name on an object to another format, such as camel-casing, or to leave property names unchanged. + A property naming policy, or to leave property names unchanged. + + + Gets or sets a value that defines how comments are handled during deserialization. + This property was set after serialization or deserialization has occurred. + The comment handling enum is set to a value that is not supported (or not within the enum range). + A value that indicates whether comments are allowed, disallowed, or skipped. + + + Gets or sets an object that specifies how object references are handled when reading and writing JSON. + + + Gets or sets the contract resolver used by this instance. + The property is set after serialization or deserialization has occurred. + + + Gets the list of chained contract resolvers used by this instance. + + + Gets or sets an object that specifies how deserializing a type declared as an is handled during deserialization. + + + Gets or sets an object that specifies how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Gets or sets a value that indicates whether JSON should use pretty printing. By default, JSON is serialized without any extra white space. + This property was set after serialization or deserialization has occurred. + + if JSON is pretty printed on serialization; otherwise, . The default is . + + + Defines the various JSON tokens that make up a JSON text. + + + The token type is a comment string. + + + The token type is the end of a JSON array. + + + The token type is the end of a JSON object. + + + The token type is the JSON literal false. + + + There is no value (as distinct from ). This is the default token type if no data has been read by the . + + + The token type is the JSON literal null. + + + The token type is a JSON number. + + + The token type is a JSON property name. + + + The token type is the start of a JSON array. + + + The token type is the start of a JSON object. + + + The token type is a JSON string. + + + The token type is the JSON literal true. + + + Specifies the data type of a JSON value. + + + A JSON array. + + + The JSON value false. + + + The JSON value null. + + + A JSON number. + + + A JSON object. + + + A JSON string. + + + The JSON value true. + + + There is no value (as distinct from ). + + + Allows the user to define custom behavior when writing JSON using the . + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoder used to override the escaping behavior. + + + Gets or sets a value that indicates whether the should format the JSON output, which includes indenting nested JSON tokens, adding new lines, and adding white space between property names and values. + + if the JSON output is formatted; if the JSON is written without any extra white space. The default is . + + + Gets or sets the maximum depth allowed when writing JSON, with the default (that is, 0) indicating a max depth of 1000. + Thrown when the max depth is set to a negative value. + + + Gets or sets a value that indicates whether the should skip structural validation and allow the user to write invalid JSON. + + if structural validation is skipped and invalid JSON is allowed; if an is thrown on any attempt to write invalid JSON. + + + Represents a mutable JSON array. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Initializes a new instance of the class that contains items from the specified array. + The items to add to the new . + + + Initializes a new instance of the class that contains items from the specified params array. + Options to control the behavior. + The items to add to the new . + + + Adds a to the end of the . + The to be added to the end of the . + + + Adds an object to the end of the . + The object to be added to the end of the . + The type of object to be added. + + + Removes all elements from the . + + + Determines whether an element is in the . + The object to locate in the . + + if is found in the ; otherwise, . + + + Initializes a new instance of the class that contains items from the specified . + The . + Options to control the behavior. + The is not a . + The new instance of the class that contains items from the specified . + + + Returns an enumerator that iterates through the . + An for the . + + + Returns an enumerable that wraps calls to . + The type of the value to obtain from the . + An enumerable iterating over values of the array. + + + The object to locate in the . + The to locate in the . + The index of item if found in the list; otherwise, -1. + + + Inserts an element into the at the specified index. + The zero-based index at which should be inserted. + The to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific from the . + The to remove from the . + + if is successfully removed; otherwise, . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + is less than 0 or is greater than . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Returns an enumerator that iterates through the . + A for the . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in the . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + The base class that represents a single node within a mutable JSON document. + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Creates a new instance of the class. All child nodes are recursively cloned. + A new cloned instance of the current node. + + + Compares the values of two nodes, including the values of all descendant nodes. + The to compare. + The to compare. + + if the tokens are equal; otherwise . + + + Returns the index of the current node from the parent . + The current parent is not a . + The index of the current node. + + + Gets the JSON path. + The JSON Path value. + + + Returns the property name of the current node from the parent object. + The current parent is not a . + The property name of the current node. + + + Gets the value for the current . + The type of the value to obtain from the . + The current cannot be represented as a {TValue}. + The current is not a or is not compatible with {TValue}. + A value converted from the instance. + + + Returns the of the current instance. + The json value kind of the current instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a nullable . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Parses a as UTF-8-encoded data representing a single JSON value into a . The Stream will be read to completion. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + is . + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Options to control the behavior. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + The from the reader. + + + Parses a as UTF-8 encoded data representing a single JSON value into a . The stream will be read to completion. + The JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + A to produce a representation of the JSON value. + + + Replaces this node with a new value. + The value that replaces this node. + The type of value to be replaced. + + + Converts the current instance to string in JSON format. + Options to control the serialization behavior. + JSON representation of current instance. + + + Gets a string representation for the current value appropriate to the node type. + A string representation for the current value appropriate to the node type. + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + The parameter is . + + + Gets or sets the element at the specified index. + The zero-based index of the element to get or set. + + is less than 0 or is greater than the number of properties. + The current is not a . + + + Gets or sets the element with the specified property name. + If the property is not found, is returned. + The name of the property to return. + + is . + The current is not a . + + + Gets the options to control the behavior. + + + Gets the parent . + If there is no parent, is returned. + A parent can either be a or a . + + + Gets the root . + + + Options to control behavior. + + + Gets or sets a value that indicates whether property names on are case insensitive. + + if property names are case insensitive; if property names are case sensitive. + + + Represents a mutable JSON object. + + + Initializes a new instance of the class that contains the specified . + The properties to be added. + Options to control the behavior. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Adds the specified property to the . + The KeyValuePair structure representing the property name and value to add to the . + An element with the same property name already exists in the . + The property name of is . + + + Adds an element with the provided property name and value to the . + The property name of the element to add. + The value of the element to add. + + is . + An element with the same property name already exists in the . + + + Removes all elements from the . + + + Determines whether the contains an element with the specified property name. + The property name to locate in the . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Initializes a new instance of the class that contains properties from the specified . + The . + Options to control the behavior. + The new instance of the class that contains properties from the specified . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Removes the element with the specified property name from the . + The property name of the element to remove. + + is . + + if the element is successfully removed; otherwise, . + + + Determines whether the contains a specific property name and reference. + The element to locate in the . + + if the contains an element with the property name; otherwise, . + + + Copies the elements of the to an array of type KeyValuePair starting at the specified array index. + The one-dimensional Array that is the destination of the elements copied from . + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Removes a key and value from the . + The KeyValuePair structure representing the property name and value to remove from the . + + if the element is successfully removed; otherwise, . + + + Gets the value associated with the specified property name. + The property name of the value to get. + When this method returns, contains the value associated with the specified property name, if the property name is found; otherwise, . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Returns the value of a property with the specified name. + The name of the property to return. + The JSON value of the property with the specified name. + + if a property with the specified name was found; otherwise, . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + Gets a collection containing the property names in the . + An containing the keys of the object that implements . + + + Gets a collection containing the property values in the . + An containing the values in the object that implements . + + + Represents a mutable JSON value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + The that will be used to serialize the value. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Tries to obtain the current JSON value and returns a value that indicates whether the operation succeeded. + When this method returns, contains the parsed value. + The type of value to obtain. + + if the value can be successfully obtained; otherwise, . + + + Specifies that the JSON type should have its method called after deserialization occurs. + + + The method that is called after deserialization. + + + Specifies that the type should have its method called before deserialization occurs. + + + The method that is called before deserialization. + + + Specifies that the type should have its method called after serialization occurs. + + + The method that is called after serialization. + + + Specifies that the type should have its method called before serialization occurs. + + + The method that is called before serialization. + + + Provides the base class for serialization attributes. + + + Creates a new instance of the . + + + When placed on a constructor, indicates that the constructor should be used to create instances of the type on deserialization. + + + Initializes a new instance of . + + + Converts an object or value to or from JSON. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + if the instance can convert the specified object type; otherwise, . + + + Gets the type being converted by the current converter instance. + + + Converts an object or value to or from JSON. + The type of object or value handled by the converter. + + + Initializes a new instance. + + + Determines whether the specified type can be converted. + The type to compare against. + + if the type can be converted; otherwise, . + + + Reads and converts the JSON to type . + The reader. + The type to convert. + An object that specifies serialization options to use. + The converted value. + + + Reads a dictionary key from a JSON property name. + The to read from. + The type to convert. + The options to use when reading the value. + The value that was converted. + + + Writes a specified value as JSON. + The writer to write to. + The value to convert to JSON. + An object that specifies serialization options to use. + + + Writes a dictionary key as a JSON property name. + The to write to. + The value to convert. The value of determines if the converter handles values. + The options to use when writing the value. + + + Gets a value that indicates whether should be passed to the converter on serialization, and whether should be passed on deserialization. + + + Gets the type being converted by the current converter instance. + + + When placed on a property or type, specifies the converter type to use. + + + Initializes a new instance of . + + + Initializes a new instance of with the specified converter type. + The type of the converter. + + + When overridden in a derived class and is , allows the derived class to create a in order to pass additional state. + The type of the converter. + The custom converter. + + + Gets the type of the , or if it was created without a type. + The type of the , or if it was created without a type. + + + Supports converting several types by using a factory pattern. + + + When overridden in a derived class, initializes a new instance of the class. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which is compatible with . + + + Gets the type being converted by the current converter instance. + + + When placed on a type declaration, indicates that the specified subtype should be opted into polymorphic serialization. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared based type. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + A derived type that should be supported in polymorphic serialization of the declared base type. + + + The type discriminator identifier to be used for the serialization of the subtype. + + + When placed on a property of type , any properties that do not have a matching member are added to that dictionary during deserialization and written during serialization. + + + Initializes a new instance of the class. + + + Prevents a property from being serialized or deserialized. + + + Initializes a new instance of . + + + Gets or sets the condition that must be met before a property will be ignored. + + + Controls how the ignores properties on serialization and deserialization. + + + Property is always ignored. + + + Property is always serialized and deserialized, regardless of configuration. + + + Property is ignored only if it equals the default value for its type. + + + Property is ignored if its value is . This is applied only to reference-type properties and fields. + + + Indicates that the member should be included for serialization and deserialization. + The attribute is applied to a non-public property. + + + Initializes a new instance of . + + + The to be used at run time. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that JSON property names should not be converted. + + + Converter to convert enums to and from numeric values. + The enum type that this converter targets. + + + Initializes a new instance of . + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Determines how handles numbers when serializing and deserializing. + + + The "NaN", "Infinity", and "-Infinity" tokens can be read as floating-point constants, and the and values for these constants will be written as their corresponding JSON string representations. + + + Numbers can be read from tokens. Does not prevent numbers from being read from token. + + + Numbers will only be read from tokens and will only be written as JSON numbers (without quotes). + + + Numbers will be written as JSON strings (with quotes), not as JSON numbers. + + + When placed on a type, property, or field, indicates what settings should be used when serializing or deserializing numbers. + + + Initializes a new instance of . + A bitwise combination of the enumeration values that specify how number types should be handled when serializing or deserializing. + + + Indicates what settings should be used when serializing or deserializing numbers. + An object that determines the number serialization and deserialization settings. + + + Determines how deserialization will handle object creation for fields or properties. + + + Attempt to populate any instances already found on a deserialized field or property. + + + A new instance will always be created when deserializing a field or property. + + + Determines how deserialization handles object creation for fields or properties. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the configuration to use when deserializing members. + + + When placed on a type, indicates that the type should be serialized polymorphically. + + + Creates a new instance. + + + Gets or sets a value that indicates whether the deserializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + + to instruct the deserializer to ignore any unrecognized type discriminator IDs and revert to the contract of the base type; to fail the deserialization for unrecognized type discriminator IDs. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + + + Specifies the property name that is present in the JSON when serializing and deserializing. This overrides any naming policy specified by . + + + Initializes a new instance of with the specified property name. + The name of the property. + + + Gets the name of the property. + The name of the property. + + + Specifies the property order that is present in the JSON when serializing. Lower values are serialized first. + If the attribute is not specified, the default value is 0. + + + Initializes a new instance of with the specified order. + The order of the property. + + + Gets the serialization order of the property. + The serialization order of the property. + + + Indicates that the annotated member must bind to a JSON property on deserialization. + + + Initializes a new instance of . + + + Instructs the System.Text.Json source generator to generate source code to help optimize performance when serializing and deserializing instances of the specified type and types in its object graph. + + + Initializes a new instance of with the specified type. + The type to generate source code for. + + + Gets or sets the mode that indicates what the source generator should generate for the type. If the value is , then the setting specified on will be used. + + + Gets or sets the name of the property for the generated for the type on the generated, derived type. + + + Provides metadata about a set of types that is relevant to JSON serialization. + + + Creates an instance of and binds it with the indicated . + The run time provided options for the context instance. + + + Gets metadata for the specified type. + The type to fetch metadata for. + The metadata for the specified type, or if the context has no metadata for the type. + + + Resolves a contract for the requested type and options. + The type to be resolved. + The configuration to use when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Gets the default run-time options for the context. + + + Gets the run-time specified options of the context. If no options were passed when instantiating the context, then a new instance is bound and returned. + + + The generation mode for the System.Text.Json source generator. + + + When specified on , indicates that both type-metadata initialization logic and optimized serialization logic should be generated for all types. When specified on , indicates that the setting on should be used. + + + Instructs the JSON source generator to generate type-metadata initialization logic. + + + Instructs the JSON source generator to generate optimized serialization logic. + + + Instructs the System.Text.Json source generator to assume the specified options will be used at run time via . + + + Initializes a new instance of . + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + is invalid. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default ignore condition. + + + Gets or sets the default value of . + + + Gets or sets the source generation mode for types that don't explicitly set the mode with . + + + Gets or sets a value that indicates whether to ignore read-only fields. + + + Gets or sets a value that indicates whether to ignore read-only properties. + + + Gets or sets a value that indicates whether to include fields for serialization and deserialization. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a built-in naming policy to convert JSON property names with. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a value that indicates whether the source generator defaults to instead of numeric serialization for all enum types encountered in its type graph. + + + Gets or sets a value that indicates whether JSON output is pretty-printed. + + + Converts enumeration values to and from strings. + + + Initializes an instance of the class with the default naming policy that allows integer values. + + + Initializes an instance of the class with a specified naming policy and a value that indicates whether undefined enumeration values are allowed. + The optional naming policy for writing enum values. + + to allow undefined enum values; otherwise, . When , if an enum value isn't defined, it will output as a number rather than a string. + + + Determines whether the specified type can be converted to an enum. + The type to be checked. + + true if the type can be converted; otherwise, false. + + + Creates a converter for the specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Converter to convert enums to and from strings. + The enum type that this converter targets. + + + Initializes a new instance of with the default naming policy and that allows integer values. + + + Initializes a new instance of . + Optional naming policy for writing enum values. + + to allow undefined enum values. When , if an enum value isn't defined, it outputs as a number rather than a string. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Defines how objects of a derived runtime type that has not been explicitly declared for polymorphic serialization should be handled. + + + An object of undeclared runtime type will fail polymorphic serialization. + + + An object of undeclared runtime type will fall back to the serialization contract of the base type. + + + An object of undeclared runtime type will revert to the serialization contract of the nearest declared ancestor type. + Certain interface hierarchies are not supported due to diamond ambiguity constraints. + + + Defines how deserializing a type declared as an is handled during deserialization. + + + A type declared as is deserialized as a . + + + A type declared as is deserialized as a . + + + Determines how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Throws an exception when an unmapped property is encountered. + + + Silently skips any unmapped properties. This is the default behavior. + + + When placed on a type, determines the configuration for the specific type, overriding the global setting. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the unmapped member handling setting for the attribute. + + + Defines the default, reflection-based JSON contract resolver used by System.Text.Json. + + + Creates a mutable instance. + + + Resolves a JSON contract for a given and configuration. + The type for which to resolve a JSON contract. + A instance used to determine contract configuration. + + or is . + A defining a reflection-derived JSON contract for . + + + Gets a list of user-defined callbacks that can be used to modify the initial contract. + + + Used to resolve the JSON serialization contract for requested types. + + + Resolves a contract for the requested type and options. + Type to be resolved. + Configuration used when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Provides serialization metadata about a collection type. + The collection type. + + + + A instance representing the element type. + + + If a dictionary type, the instance representing the key type. + + + The option to apply to number collection elements. + + + A to create an instance of the collection when deserializing. + + + An optimized serialization implementation assuming pre-determined defaults. + + + Represents a supported derived type defined in the metadata of a polymorphic type. + + + Initializes a new instance of the class that represents a supported derived type without a type discriminator. + The derived type to be supported by the polymorphic type metadata. + + + Initializes a new instance of the class that represents a supported derived type with an integer type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Initializes a new instance of the class that represents a supported derived type with a string type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Gets a derived type that should be supported in polymorphic serialization of the declared base type. + + + Gets the type discriminator identifier to be used for the serialization of the subtype. + + + Provides helpers to create and initialize metadata for JSON-serializable types. + + + Creates serialization metadata for an array. + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates serialization metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for and types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for non-dictionary immutable collection types. + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a complex class or struct. + The to use for serialization and deserialization. + Provides serialization metadata about an object type with constructors, properties, and fields. + The type of the class or struct. + + or is . + A instance representing the class or struct. + + + Creates metadata for a property or field. + The to use for serialization and deserialization. + Provides serialization metadata about the property or field. + The type that the converter for the property returns or accepts when converting JSON data. + A instance initialized with the provided metadata. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a primitive or a type with a custom converter. + The to use for serialization and deserialization. + + The generic type definition. + A instance representing the type. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the enum type. + A instance that converts values. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the underlying nullable type. + A instance that converts values + + + Creates a instance that converts values. + Serialization metadata for the underlying nullable type. + The generic definition for the underlying nullable type. + A instance that converts values + + + Gets a type converter that throws a . + The generic definition for the type. + A instance that throws + + + Gets an object that converts values. + + + Gets an object that converts byte array values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + An instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Provides serialization metadata about an object type with constructors, properties, and fields. + The object type to serialize or deserialize. + + + + Provides a mechanism to initialize metadata for a parameterized constructor of the class or struct to be used when deserializing. + + + Gets or sets an object that specifies how number properties and fields should be processed when serializing and deserializing. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterless constructor during deserialization. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterized constructor during deserialization. + + + Gets or sets a mechanism to initialize metadata for properties and fields of the class or struct. + + + Gets or sets a serialization implementation for instances of the class or struct that assumes options specified by . + + + Provides information about a constructor parameter required for JSON deserialization. + + + + Gets or sets the default value of the parameter. + + + Gets or sets a value that specifies whether a default value was specified for the parameter. + + + Gets or sets the name of the parameter. + + + Gets or sets the type of the parameter. + + + Gets or sets the zero-based position of the parameter in the formal parameter list. + + + Defines polymorphic configuration for a specified base type. + + + Creates an empty instance. + + + Gets the list of derived types supported in the current polymorphic type configuration. + + + Gets or sets a value that indicates whether the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + The parent instance has been locked for further modification. + + if the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type; if the deserialization should fail when an unrecognized type discriminator ID is encountered. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + The parent instance has been locked for further modification. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + The parent instance has been locked for further modification. + + + Provides JSON serialization-related metadata about a property or field. + + + Gets or sets the custom attribute provider for the current property. + The instance has been locked for further modification. + + + Gets or sets a custom converter override for the current property. + The instance has been locked for further modification. + + + Gets or sets a getter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a value that indicates whether the current property is a special extension data property. + The instance has been locked for further modification. + +-or- + +The current is not valid for use with extension data. + + + Gets or sets a value that indicates whether the current property is required for deserialization to be successful. + The instance has been locked for further modification. + + + Gets or sets the JSON property name used when serializing the property. + + is . + The instance has been locked for further modification. + + + Gets or sets the applied to the current property. + The instance has been locked for further modification. + + + Gets or sets a value indicating if the property or field should be replaced or populated during deserialization. + + + Gets the value associated with the current contract instance. + + + Gets or sets the serialization order for the current property. + The instance has been locked for further modification. + + + Gets the type of the current property. + + + Gets or sets a setter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a predicate that determines whether the current property value should be serialized. + The instance has been locked for further modification. + + + Provides serialization metadata about a property or field. + The type to convert of the for the property. + + + + A for the property or field, specified by . + + + The declaring type of the property or field. + + + Provides a mechanism to get the property or field's value. + + + Whether the property was annotated with . + + + Specifies a condition for the member to be ignored. + + + Whether the property was annotated with . + + + If , indicates that the member is a property, otherwise indicates the member is a field. + + + Whether the property or field is public. + + + Whether the property or field is a virtual property. + + + The name to be used when processing the property or field, specified by . + + + If the property or field is a number, specifies how it should processed when serializing and deserializing. + + + The name of the property or field. + + + The info for the property or field's type. + + + Provides a mechanism to set the property or field's value. + + + Provides JSON serialization-related metadata about a type. + + + Creates a blank instance for the current . + The declared type for the property. + The property name used in JSON serialization and deserialization. + + or is . + + cannot be used for serialization. + The instance has been locked for further modification. + A blank instance. + + + Creates a blank instance. + The type for which contract metadata is specified. + The instance the metadata is associated with. + + or is . + + cannot be used for serialization. + A blank instance. + + + Creates a blank instance. + The instance the metadata is associated with. + The type for which contract metadata is specified. + + is . + A blank instance. + + + Locks the current instance for further modification. + + + Gets the associated with the current type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Gets a value that indicates whether the current instance has been locked for modification. + + + Gets a value that describes the kind of contract metadata that the current instance specifies. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + An invalid value was specified. + + + Gets or sets a callback to be invoked after deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked after serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets the value associated with the current instance. + + + Gets or sets the from which this metadata instance originated. + The instance has been locked for further modification. + + + Gets or sets a configuration object specifying polymorphism metadata. + + has been associated with a different instance. + The instance has been locked for further modification. + +-or- + +Polymorphic serialization is not supported for the current metadata . + + + Gets or sets the preferred value for properties contained in the type. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for JsonTypeInfoKind.Object. + Specified an invalid value. + + + Gets the list of metadata corresponding to the current type. + + + Gets the for which the JSON serialization contract is being defined. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for . + An invalid value was specified. + + + Provides JSON serialization-related metadata about a type. + The generic definition of the type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Serializes an instance of using values specified at design time. + + + Describes the kind of contract metadata a specifies. + + + Type is serialized as a dictionary with key/value pair entries. + + + Type is serialized as a collection with elements. + + + Type is either a simple value or uses a custom converter. + + + Type is serialized as an object with properties. + + + Contains utilities and combinators acting on . + + + Combines multiple sources into one. + Sequence of contract resolvers to be queried for metadata. + + is . + A combining results from . + + + Creates a resolver and applies modifications to the metadata generated by the source . + The source resolver generating metadata. + The delegate that modifies non- results. + A new instance with modifications applied. + + + Defines how the deals with references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Returns the used for each serialization call. + The resolver to use for serialization and deserialization. + + + Gets an object that indicates whether an object is ignored when a reference cycle is detected during serialization. + + + Gets an object that indicates whether metadata properties are honored when JSON objects and arrays are deserialized into reference types, and written when reference types are serialized. This is necessary to create round-trippable JSON from objects that contain cycles or duplicate references. + + + Defines how the deals with references on serialization and deserialization. + The type of the to create on each serialization or deserialization call. + + + Initializes a new instance of the generic class that can create a instance of the specified type. + + + Creates a new of type used for each serialization call. + The new resolver to use for serialization and deserialization. + + + Defines how the deals with references on serialization and deserialization. + Defines the core behavior of preserving references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Adds an entry to the bag of references using the specified id and value. + This method gets called when an $id metadata property from a JSON object is read. + The identifier of the JSON object or array. + The value of the CLR reference type object that results from parsing the JSON object. + + + Gets the reference identifier of the specified value if exists; otherwise a new id is assigned. + This method gets called before a CLR object is written so we can decide whether to write $id and enumerate the rest of its properties or $ref and step into the next object. + The value of the CLR reference type object to get an id for. + When this method returns, if a reference to value already exists; otherwise, . + The reference id for the specified object. + + + Returns the CLR reference type object related to the specified reference id. + This method gets called when $ref metadata property is read. + The reference id related to the returned object. + The reference type object related to the specified reference id. + + + Provides a high-performance API for forward-only, read-only access to UTF-8 encoded JSON text. + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Copies the current JSON token value from the source, unescaped, as UTF-8 bytes to a buffer. + A buffer to write the unescaped UTF-8 bytes into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of bytes written to . + + + Copies the current JSON token value from the source, unescaped, as UTF-16 characters to a buffer. + A buffer to write the transcoded UTF-16 characters into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of characters written to . + + + Reads the next JSON token value from the source as a . + The value of the JSON token isn't a Boolean value (that is, or ). + + if the is ; if the is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Byte.MinValue or greater than Byte.MaxValue. + The value of the UTF-8 encoded token. + + + Parses the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array. + The type of the JSON token is not a . + The value is not encoded as Base64 text, so it can't be decoded to bytes. + +-or- + +The value contains invalid or more than two padding characters. + +-or- + +The value is incomplete. That is, the JSON string length is not a multiple of 4. + The byte array that represents the current JSON token value. + + + Parses the current JSON token value from the source as a comment and transcodes it as a . + The JSON token is not a comment. + The comment that represents the current JSON token value. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time offset, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Decimal.MinValue or greater than Decimal.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Double.MinValue or greater than Double.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value is in an unsupported format for a Guid. + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + The GUID value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Int16.MinValue or greater than Int16.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int32.MinValue or greater than Int32.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int64.MinValue or greater than Int64.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Parses the current JSON token value from the source as an . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than SByte.MinValue or greater than SByte.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Single.MinValue or greater than Single.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source unescaped and transcodes it as a string. + The JSON token value isn't a string (that is, not a , , or ). + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The token value parsed to a string, or if is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than UInt16.MinValue or greater than UInt16.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt32.MinValue or greater than UInt32.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt64.MinValue or greater than UInt64.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token from the input source. + An invalid JSON token according to the JSON RFC is encountered. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + if the token was read successfully; otherwise, . + + + Skips the children of the current JSON token. + The reader was given partial data with more data to follow (that is, is ). + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decoded binary representation of the Base64 text. + The JSON token is not a . + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to skip the children of the current JSON token. + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or - + +The current depth exceeds the recursive limit set by the maximum depth. + + if there was enough data for the children to be skipped successfully; otherwise, . + + + Compares the UTF-8 encoded text in a read-only byte span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The UTF-8 encoded text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the UTF-8 encoded lookup text; otherwise, . + + + Compares the text in a read-only character span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Compares the string text to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Gets the total number of bytes consumed so far by this instance of the . + The total number of bytes consumed so far. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the current state to pass to a constructor with more data. + The current reader state. + + + Gets a value that indicates which Value property to use to get the token value. + + if should be used to get the token value; if should be used instead. + + + Gets a value that indicates whether all the JSON data was provided or there is more data to come. + + if the reader was constructed with the input span or sequence containing the entire JSON data to process; if the reader was constructed with an input span or sequence that may contain partial JSON data with more data to follow. + + + Gets the current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + The current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + + + Gets the index that the last processed JSON token starts at (within the given UTF-8 encoded input text), skipping any white space. + The starting index of the last processed JSON token within the given UTF-8 encoded input text. + + + Gets the type of the last processed JSON token in the UTF-8 encoded JSON text. + The type of the last processed JSON token. + + + Gets a value that indicates whether the current or properties contain escape sequences per RFC 8259 section 7, and therefore require unescaping before being consumed. + + + Gets the raw value of the last processed token as a ReadOnlySequence<byte> slice of the input payload, only if the token is contained within multiple segments. + A byte read-only sequence. + + + Gets the raw value of the last processed token as a ReadOnlySpan<byte> slice of the input payload, if the token fits in a single segment or if the reader was constructed with a JSON payload contained in a ReadOnlySpan<byte>. + A read-only span of bytes. + + + Provides a high-performance API for forward-only, non-cached writing of UTF-8 encoded JSON text. + + + Initializes a new instance of the class using the specified to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Initializes a new instance of the class using the specified stream to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + + + Asynchronously commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + A task representing the asynchronous dispose operation. + + + Commits the JSON text written so far, which makes it visible to the output destination. + This instance has been disposed. + + + Asynchronously commits the JSON text written so far, which makes it visible to the output destination. + The token to monitor for cancellation requests. The default value is . + This instance has been disposed. + A task representing the asynchronous flush operation. + + + Resets the internal state of this instance so that it can be reused. + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The JSON-encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the raw bytes value as a Base64 encoded JSON string as an element of a JSON array. + The binary data to be written as a Base64 encoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON literal true or false) as an element of a JSON array. + The value to be written as a JSON literal true or false as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value as a JSON comment. + The UTF-8 encoded value to be written as a JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a UTF-16 text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a string text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + The parameter is . + + + Writes the end of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the end of a JSON object. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and the JSON literal null as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the JSON literal null as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the UTF-8 property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + is . + + + Writes the pre-encoded property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; to skip validation. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input + is not a valid, complete, single JSON value according to the JSON RFC + or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + + is . + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the beginning of a JSON array. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON array to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON array with a pre-encoded property name as the key. + The JSON encoded property name of the JSON array to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the beginning of a JSON object. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON object with a pre-encoded property name as the key. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the UTF-8 property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value (as a JSON string) as an element of a JSON array. + The UTF-8 encoded value to be written as a JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a string text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded text value (as a JSON string) as an element of a JSON array. + The JSON encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + Validation is enabled, and the write operation would produce invalid JSON. + + + Gets the total number of bytes committed to the output by the current instance so far. + The total number of bytes committed to the output by the so far. + + + Gets the number of bytes written by the so far that have not yet been flushed to the output and committed. + The number of bytes written so far by the that have not yet been flushed to the output and committed. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the custom behavior when writing JSON using this instance, which indicates whether to format the output while writing, whether to skip structural JSON validation, and which characters to escape. + The custom behavior of this instance of the writer for formatting, validating, and escaping. + + + \ No newline at end of file diff --git a/packages/System.Text.Json.8.0.0/lib/net8.0/System.Text.Json.dll b/packages/System.Text.Json.8.0.0/lib/net8.0/System.Text.Json.dll new file mode 100644 index 0000000..e16cfbb Binary files /dev/null and b/packages/System.Text.Json.8.0.0/lib/net8.0/System.Text.Json.dll differ diff --git a/packages/System.Text.Json.8.0.0/lib/net8.0/System.Text.Json.xml b/packages/System.Text.Json.8.0.0/lib/net8.0/System.Text.Json.xml new file mode 100644 index 0000000..da1a571 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/lib/net8.0/System.Text.Json.xml @@ -0,0 +1,5785 @@ + + + + System.Text.Json + + + + Defines how the struct handles comments. + + + Allows comments within the JSON input and treats them as valid tokens. While reading, the caller can access the comment values. + + + Doesn't allow comments within the JSON input. Comments are treated as invalid JSON if found, and a is thrown. This is the default value. + + + Allows comments within the JSON input and ignores them. The behaves as if no comments are present. + + + Provides a mechanism for examining the structural content of a JSON value without automatically instantiating data values. + + + Releases the resources used by this instance. + + + Parses a sequence as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses memory as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON string value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + + contains unsupported options. + A task to produce a JsonDocument representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + A JsonDocument representing the value (and nested values) read from the reader. + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + When the method returns, contains the parsed document. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonDocument; if the reader ran out of data while parsing. All other situations result in an exception being thrown. + + + Writes the document to the provided writer as a JSON value. + The writer to which to write the document. + The parameter is . + The of this would result in invalid JSON. + The parent has been disposed. + + + Gets the root element of this JSON document. + A representing the value of the document. + + + Provides the ability for the user to define custom behavior when parsing JSON to create a . + + + Gets or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma at the end of a list of JSON values in an object or array is allowed; otherwise, . Default is + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The comment handling enum is set to a value that is not supported (or not within the enum range). + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when parsing JSON data, with the default (that is, 0) indicating a maximum depth of 64. + The max depth is set to a negative value. + The maximum depth allowed when parsing JSON data. + + + Represents a specific JSON value within a . + + + Gets a JsonElement that can be safely stored beyond the lifetime of the original . + A JsonElement that can be safely stored beyond the lifetime of the original . + + + Gets an enumerator to enumerate the values in the JSON array represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the values in the JSON array represented by this JsonElement. + + + Gets an enumerator to enumerate the properties in the JSON object represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the properties in the JSON object represented by this JsonElement. + + + Gets the number of values contained within the current array value. + This value's is not . + The parent has been disposed. + The number of values contained within the current array value. + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a byte array. + This value's is not . + The value is not encoded as Base64 text and hence cannot be decoded to bytes. + The parent has been disposed. + The value decoded as a byte array. + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as an . + + + Gets a representing the value of a required property identified by . + The UTF-8 representation (with no Byte-Order-Mark (BOM)) of the name of the property to return. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + + is . + The parent has been disposed. + A representing the value of the requested property. + + + Gets a string that represents the original input data backing this value. + The parent has been disposed. + The original input data backing this value. + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + A JsonElement representing the value (and nested values) read from the reader. + + + Gets a string representation for the current value appropriate to the value type. + The parent has been disposed. + A string representation for the current value appropriate to the value type. + + + Attempts to represent the current JSON number as a . + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a byte array, assuming that it is Base64 encoded. + If the method succeeds, contains the decoded binary representation of the Base64 text. + This value's is not . + The parent has been disposed. + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The UTF-8 (with no Byte-Order-Mark (BOM)) representation of the name of the property to return. + Receives the value of the located property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, its value is assigned to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + + is . + The parent has been disposed. + + if the property was found; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Receives the parsed element. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonElement; if the reader ran out of data while parsing. + All other situations result in an exception being thrown. + + + Compares the text represented by a UTF8-encoded byte span to the string value of this element. + The UTF-8 encoded text to compare against. + This value's is not . + + if the string value of this element has the same UTF-8 encoding as + ; otherwise, . + + + Compares a specified read-only character span to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Compares a specified string to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Writes the element to the specified writer as a JSON value. + The writer to which to write the element. + The parameter is . + The of this value is . + The parent has been disposed. + + + Gets the value at the specified index if the current value is an . + The item index. + This value's is not . + + is not in the range [0, ()). + The parent has been disposed. + The value at the specified index. + + + Gets the type of the current JSON value. + The parent has been disposed. + The type of the current JSON value. + + + Represents an enumerator for the contents of a JSON array. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the array. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for an array of that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an enumerator for the properties of a JSON object. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates the properties of an object. + An enumerator that can be used to iterate through the object. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for objects that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides methods to transform UTF-8 or UTF-16 encoded text into a form that is suitable for JSON. + + + Encodes a UTF-8 text value as a JSON string. + The UTF-8 encoded text to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-8 bytes. + The encoded JSON text. + + + Encodes a specified text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Encodes the string text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is . + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Determines whether this instance and a specified object, which must also be a instance, have the same value. + The object to compare to this instance. + + if the current instance and are equal; otherwise, . + + + Determines whether this instance and another specified instance have the same value. + The object to compare to this instance. + + if this instance and have the same value; otherwise, . + + + Returns the hash code for this . + The hash code for this instance. + + + Converts the value of this instance to a . + The underlying UTF-16 encoded string. + + + Gets the UTF-8 encoded representation of the pre-encoded JSON text. + The UTF-8 encoded representation of the pre-encoded JSON text. + + + Gets the UTF-16 encoded representation of the pre-encoded JSON text as a . + + + Defines a custom exception object that is thrown when invalid JSON text is encountered, the defined maximum depth is passed, or the JSON text is not compatible with the type of a property on an object. + + + Initializes a new instance of the class. + + + Creates a new exception object with serialized data. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + is . + + + Initializes a new instance of the class with a specified error message. + The context-specific error message. + + + Initializes a new instance of the class, with a specified error message and a reference to the inner exception that is the cause of this exception. + The context-specific error message. + The exception that caused the current exception. + + + Creates a new exception object to relay error information to the user. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count within the current line (starting at 0) where the invalid JSON was encountered. + + + Creates a new exception object to relay error information to the user that includes a specified inner exception. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count (starting at 0) within the current line where the invalid JSON was encountered. + The exception that caused the current exception. + + + Sets the with information about the exception. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + + Gets the zero-based number of bytes read within the current line before the exception. + The zero-based number of bytes read within the current line before the exception. + + + Gets the zero-based number of lines read before the exception. + The zero-based number of lines read before the exception. + + + Gets a message that describes the current exception. + The error message that describes the current exception. + + + Gets The path within the JSON where the exception was encountered. + The path within the JSON where the exception was encountered. + + + Determines the naming policy used to convert a string-based name to another format, such as a camel-casing format. + + + Initializes a new instance of . + + + When overridden in a derived class, converts the specified name according to the policy. + The name to convert. + The converted name. + + + Gets the naming policy for camel-casing. + The naming policy for camel-casing. + + + Gets the naming policy for lowercase kebab-casing. + + + Gets the naming policy for uppercase kebab-casing. + + + Gets the naming policy for lowercase snake-casing. + + + Gets the naming policy for uppercase snake-casing. + + + Represents a single property for a JSON object. + + + Compares the specified UTF-8 encoded text to the name of this property. + The UTF-8 encoded text to compare against. + This value's is not . + + if the name of this property has the same UTF-8 encoding as ; otherwise, . + + + Compares the specified text as a character span to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise, . + + + Compares the specified string to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise . + + + Provides a string representation of the property for debugging purposes. + A string containing the uninterpreted value of the property, beginning at the declaring open-quote and ending at the last character that is part of the value. + + + Writes the property to the provided writer as a named JSON object property. + The writer to which to write the property. + + is . + + is too large to be a JSON object property. + The of this JSON property's would result in invalid JSON. + The parent has been disposed. + + + Gets the name of this property. + The name of this property. + + + Gets the value of this property. + The value of this property. + + + Provides the ability for the user to define custom behavior when reading JSON. + + + Gets or sets a value that defines whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma is allowed; otherwise, . + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The property is being set to a value that is not a member of the enumeration. + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when reading JSON, with the default (that is, 0) indicating a maximum depth of 64. + The maximum depth is being set to a negative value. + The maximum depth allowed when reading JSON. + + + Defines an opaque type that holds and saves all the relevant state information, which must be provided to the to continue reading after processing incomplete data. + + + Constructs a new instance. + Defines the customized behavior of the that is different from the JSON RFC (for example how to handle comments, or the maximum depth allowed when reading). By default, the follows the JSON RFC strictly (comments within the JSON are invalid) and reads up to a maximum depth of 64. + The maximum depth is set to a non-positive value (< 0). + + + Gets the custom behavior to use when reading JSON data using the struct that may deviate from strict adherence to the JSON specification, which is the default behavior. + The custom behavior to use when reading JSON data. + + + Provides functionality to serialize objects or value types to JSON and to deserialize JSON into objects or value types. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + + or is . + The JSON is invalid, + or there is remaining data in the Stream. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + + or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + The JSON is invalid, + or there is remaining data in the buffer. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + +-or- + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance specified by the . + The reader to read. + Metadata about the type to convert. + The JSON is invalid, + is not compatible with the JSON, + or a value could not be read from the reader. + + is using unsupported options. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader and converts it into an instance of a specified type. + The reader to read the JSON from. + The type of the object to convert to and return. + Options to control the serializer behavior during reading. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Options to control the behavior during reading. + The type to deserialize the JSON value into. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the UTF-8 encoded text. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the JSON value. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance of the type specified by a generic type parameter. + The reader to read the JSON from. + Options to control serializer behavior during reading. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + uses unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The that can be used to cancel the read operation. + + or is . + The JSON is invalid, + or when there is remaining data in the Stream. + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a specified type. The stream will be read to completion. + The JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + A cancellation token that may be used to cancel the read operation. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + The that can be used to cancel the read operation. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a type specified by a generic type parameter. The stream will be read to completion. + The JSON data to parse. + Options to control the behavior during reading. + A token that may be used to cancel the read operation. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + + is . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The which may be used to cancel the read operation. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Options to control the behavior during reading. + The which may be used to cancel the read operation. + The element type to deserialize asynchronously. + + is . + An representation of the provided JSON array. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Metadata about the element type to convert. + The that can be used to cancel the read operation. + The element type to deserialize asynchronously. + + or is . + An representation of the provided JSON array. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the value of a specified type into a JSON string. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + + or is . + + does not match the type of . + + + Writes the JSON representation of the specified type to the provided writer. + The JSON writer to write to. + The value to convert and write. + The type of the to convert. + Options to control serialization behavior. + + is not compatible with + + or is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + A JSON writer to write to. + The value to convert and write. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + + Converts the value of a type specified by a generic type parameter into a JSON string. + The value to convert. + Options to control serialization behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes the JSON representation of a type specified by a generic type parameter to the provided writer. + A JSON writer to write to. + The value to convert and write. + Options to control serialization behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + The type of the value to serialize. + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and writes it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + + is . + + does not match the type of . + A task that represents the asynchronous write operation. + + + Asynchronously converts the value of a specified type to UTF-8 encoded JSON text and writes it to the specified stream. + The UTF-8 stream to write to. + The value to convert. + The type of the to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + The that can be used to cancel the write operation. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Asynchronously converts a value of a type specified by a generic type parameter to UTF-8 encoded JSON text and writes it to a stream. + The UTF-8 stream to write to. + The value to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A UTF-8 representation of the value. + + + Converts a value of the specified type into a JSON string, encoded as UTF-8 bytes. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A UTF-8 representation of the value. + + + Converts the value of a type specified by a generic type parameter into a JSON string, encoded as UTF-8 bytes. + The value to convert. + Options to control the conversion behavior. + The type of the value. + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A UTF-8 representation of the value. + + + Indicates whether unconfigured instances should be set to use the reflection-based . + + + Specifies scenario-based default serialization options that can be used to construct a instance. + + + + General-purpose option values. These are the same settings that are applied if a member isn't specified. + For information about the default property values that are applied, see JsonSerializerOptions properties. + + + + + Option values appropriate to Web-based scenarios. + This member implies that: + - Property names are treated as case-insensitive. + - "camelCase" name formatting should be employed. + - Quoted numbers (JSON strings for number properties) are allowed. + + + + Provides options to be used with . + + + Initializes a new instance of the class. + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + + Copies the options from a instance to a new instance. + The options instance to copy options from. + + is . + + + Appends a new to the metadata resolution of the current instance. + The generic definition of the specified context type. + + + Returns the converter for the specified type. + The type to return a converter for. + The configured for returned an invalid converter. + There is no compatible for or its serializable members. + The first converter that supports the given type. + + + Gets the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + + is . + + is not valid for serialization. + The contract metadata resolved for . + + + Marks the current instance as read-only to prevent any further user modification. + The instance does not specify a setting. + + + Marks the current instance as read-only preventing any further user modification. + Populates unconfigured properties with the reflection-based default. + + The instance does not specify a setting. Thrown when is . + -or- + The feature switch has been turned off. + + + + Tries to get the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + When this method returns, contains the resolved contract metadata, or if the contract could not be resolved. + + is . + + is not valid for serialization. + + if a contract for was found, or otherwise. + + + Get or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being deserialized. + This property was set after serialization or deserialization has occurred. + + if an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored); otherwise. + + + Gets the list of user-defined converters that were registered. + The list of custom converters. + + + Gets a read-only, singleton instance of that uses the default configuration. + + + Gets or sets the default buffer size, in bytes, to use when creating temporary buffers. + The buffer size is less than 1. + This property was set after serialization or deserialization has occurred. + The default buffer size in bytes. + + + Gets or sets a value that determines when properties with default values are ignored during serialization or deserialization. + The default value is . + This property is set to . + This property is set after serialization or deserialization has occurred. + +-or- + + has been set to . These properties cannot be used together. + + + Gets or sets the policy used to convert a key's name to another format, such as camel-casing. + The policy used to convert a key's name to another format. + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoding. + + + Gets or sets a value that indicates whether values are ignored during serialization and deserialization. The default value is . + This property was set after serialization or deserialization has occurred. + +-or- + + has been set to a non-default value. These properties cannot be used together. + + if null values are ignored during serialization and deserialization; otherwise, . + + + Gets or sets a value that indicates whether read-only fields are ignored during serialization. A field is read-only if it is marked with the keyword. The default value is . + This property is set after serialization or deserialization has occurred. + + if read-only fields are ignored during serialization; otherwise. + + + Gets a value that indicates whether read-only properties are ignored during serialization. The default value is . + This property was set after serialization or deserialization has occurred. + + if read-only properties are ignored during serialization; otherwise, . + + + Gets or sets a value that indicates whether fields are handled during serialization and deserialization. + The default value is . + This property is set after serialization or deserialization has occurred. + + if fields are included during serialization; otherwise, . + + + Gets a value that indicates whether the current instance has been locked for user modification. + + + Gets or sets the maximum depth allowed when serializing or deserializing JSON, with the default value of 0 indicating a maximum depth of 64. + This property was set after serialization or deserialization has occurred. + The max depth is set to a negative value. + The maximum depth allowed when serializing or deserializing JSON. + + + Gets or sets an object that specifies how number types should be handled when serializing or deserializing. + This property is set after serialization or deserialization has occurred. + + + Gets or sets the preferred object creation handling for properties when deserializing JSON. + When set to , all properties that are capable of reusing the existing instance will be populated. + + + Gets or sets a value that indicates whether a property's name uses a case-insensitive comparison during deserialization. The default value is . + + if property names are compared case-insensitively; otherwise, . + + + Gets or sets a value that specifies the policy used to convert a property's name on an object to another format, such as camel-casing, or to leave property names unchanged. + A property naming policy, or to leave property names unchanged. + + + Gets or sets a value that defines how comments are handled during deserialization. + This property was set after serialization or deserialization has occurred. + The comment handling enum is set to a value that is not supported (or not within the enum range). + A value that indicates whether comments are allowed, disallowed, or skipped. + + + Gets or sets an object that specifies how object references are handled when reading and writing JSON. + + + Gets or sets the contract resolver used by this instance. + The property is set after serialization or deserialization has occurred. + + + Gets the list of chained contract resolvers used by this instance. + + + Gets or sets an object that specifies how deserializing a type declared as an is handled during deserialization. + + + Gets or sets an object that specifies how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Gets or sets a value that indicates whether JSON should use pretty printing. By default, JSON is serialized without any extra white space. + This property was set after serialization or deserialization has occurred. + + if JSON is pretty printed on serialization; otherwise, . The default is . + + + Defines the various JSON tokens that make up a JSON text. + + + The token type is a comment string. + + + The token type is the end of a JSON array. + + + The token type is the end of a JSON object. + + + The token type is the JSON literal false. + + + There is no value (as distinct from ). This is the default token type if no data has been read by the . + + + The token type is the JSON literal null. + + + The token type is a JSON number. + + + The token type is a JSON property name. + + + The token type is the start of a JSON array. + + + The token type is the start of a JSON object. + + + The token type is a JSON string. + + + The token type is the JSON literal true. + + + Specifies the data type of a JSON value. + + + A JSON array. + + + The JSON value false. + + + The JSON value null. + + + A JSON number. + + + A JSON object. + + + A JSON string. + + + The JSON value true. + + + There is no value (as distinct from ). + + + Allows the user to define custom behavior when writing JSON using the . + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoder used to override the escaping behavior. + + + Gets or sets a value that indicates whether the should format the JSON output, which includes indenting nested JSON tokens, adding new lines, and adding white space between property names and values. + + if the JSON output is formatted; if the JSON is written without any extra white space. The default is . + + + Gets or sets the maximum depth allowed when writing JSON, with the default (that is, 0) indicating a max depth of 1000. + Thrown when the max depth is set to a negative value. + + + Gets or sets a value that indicates whether the should skip structural validation and allow the user to write invalid JSON. + + if structural validation is skipped and invalid JSON is allowed; if an is thrown on any attempt to write invalid JSON. + + + Represents a mutable JSON array. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Initializes a new instance of the class that contains items from the specified array. + The items to add to the new . + + + Initializes a new instance of the class that contains items from the specified params array. + Options to control the behavior. + The items to add to the new . + + + Adds a to the end of the . + The to be added to the end of the . + + + Adds an object to the end of the . + The object to be added to the end of the . + The type of object to be added. + + + Removes all elements from the . + + + Determines whether an element is in the . + The object to locate in the . + + if is found in the ; otherwise, . + + + Initializes a new instance of the class that contains items from the specified . + The . + Options to control the behavior. + The is not a . + The new instance of the class that contains items from the specified . + + + Returns an enumerator that iterates through the . + An for the . + + + Returns an enumerable that wraps calls to . + The type of the value to obtain from the . + An enumerable iterating over values of the array. + + + The object to locate in the . + The to locate in the . + The index of item if found in the list; otherwise, -1. + + + Inserts an element into the at the specified index. + The zero-based index at which should be inserted. + The to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific from the . + The to remove from the . + + if is successfully removed; otherwise, . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + is less than 0 or is greater than . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Returns an enumerator that iterates through the . + A for the . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in the . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + The base class that represents a single node within a mutable JSON document. + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Creates a new instance of the class. All child nodes are recursively cloned. + A new cloned instance of the current node. + + + Compares the values of two nodes, including the values of all descendant nodes. + The to compare. + The to compare. + + if the tokens are equal; otherwise . + + + Returns the index of the current node from the parent . + The current parent is not a . + The index of the current node. + + + Gets the JSON path. + The JSON Path value. + + + Returns the property name of the current node from the parent object. + The current parent is not a . + The property name of the current node. + + + Gets the value for the current . + The type of the value to obtain from the . + The current cannot be represented as a {TValue}. + The current is not a or is not compatible with {TValue}. + A value converted from the instance. + + + Returns the of the current instance. + The json value kind of the current instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a nullable . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Parses a as UTF-8-encoded data representing a single JSON value into a . The Stream will be read to completion. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + is . + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Options to control the behavior. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + The from the reader. + + + Parses a as UTF-8 encoded data representing a single JSON value into a . The stream will be read to completion. + The JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + A to produce a representation of the JSON value. + + + Replaces this node with a new value. + The value that replaces this node. + The type of value to be replaced. + + + Converts the current instance to string in JSON format. + Options to control the serialization behavior. + JSON representation of current instance. + + + Gets a string representation for the current value appropriate to the node type. + A string representation for the current value appropriate to the node type. + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + The parameter is . + + + Gets or sets the element at the specified index. + The zero-based index of the element to get or set. + + is less than 0 or is greater than the number of properties. + The current is not a . + + + Gets or sets the element with the specified property name. + If the property is not found, is returned. + The name of the property to return. + + is . + The current is not a . + + + Gets the options to control the behavior. + + + Gets the parent . + If there is no parent, is returned. + A parent can either be a or a . + + + Gets the root . + + + Options to control behavior. + + + Gets or sets a value that indicates whether property names on are case insensitive. + + if property names are case insensitive; if property names are case sensitive. + + + Represents a mutable JSON object. + + + Initializes a new instance of the class that contains the specified . + The properties to be added. + Options to control the behavior. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Adds the specified property to the . + The KeyValuePair structure representing the property name and value to add to the . + An element with the same property name already exists in the . + The property name of is . + + + Adds an element with the provided property name and value to the . + The property name of the element to add. + The value of the element to add. + + is . + An element with the same property name already exists in the . + + + Removes all elements from the . + + + Determines whether the contains an element with the specified property name. + The property name to locate in the . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Initializes a new instance of the class that contains properties from the specified . + The . + Options to control the behavior. + The new instance of the class that contains properties from the specified . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Removes the element with the specified property name from the . + The property name of the element to remove. + + is . + + if the element is successfully removed; otherwise, . + + + Determines whether the contains a specific property name and reference. + The element to locate in the . + + if the contains an element with the property name; otherwise, . + + + Copies the elements of the to an array of type KeyValuePair starting at the specified array index. + The one-dimensional Array that is the destination of the elements copied from . + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Removes a key and value from the . + The KeyValuePair structure representing the property name and value to remove from the . + + if the element is successfully removed; otherwise, . + + + Gets the value associated with the specified property name. + The property name of the value to get. + When this method returns, contains the value associated with the specified property name, if the property name is found; otherwise, . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Returns the value of a property with the specified name. + The name of the property to return. + The JSON value of the property with the specified name. + + if a property with the specified name was found; otherwise, . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + Gets a collection containing the property names in the . + An containing the keys of the object that implements . + + + Gets a collection containing the property values in the . + An containing the values in the object that implements . + + + Represents a mutable JSON value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + The that will be used to serialize the value. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Tries to obtain the current JSON value and returns a value that indicates whether the operation succeeded. + When this method returns, contains the parsed value. + The type of value to obtain. + + if the value can be successfully obtained; otherwise, . + + + Specifies that the JSON type should have its method called after deserialization occurs. + + + The method that is called after deserialization. + + + Specifies that the type should have its method called before deserialization occurs. + + + The method that is called before deserialization. + + + Specifies that the type should have its method called after serialization occurs. + + + The method that is called after serialization. + + + Specifies that the type should have its method called before serialization occurs. + + + The method that is called before serialization. + + + Provides the base class for serialization attributes. + + + Creates a new instance of the . + + + When placed on a constructor, indicates that the constructor should be used to create instances of the type on deserialization. + + + Initializes a new instance of . + + + Converts an object or value to or from JSON. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + if the instance can convert the specified object type; otherwise, . + + + Gets the type being converted by the current converter instance. + + + Converts an object or value to or from JSON. + The type of object or value handled by the converter. + + + Initializes a new instance. + + + Determines whether the specified type can be converted. + The type to compare against. + + if the type can be converted; otherwise, . + + + Reads and converts the JSON to type . + The reader. + The type to convert. + An object that specifies serialization options to use. + The converted value. + + + Reads a dictionary key from a JSON property name. + The to read from. + The type to convert. + The options to use when reading the value. + The value that was converted. + + + Writes a specified value as JSON. + The writer to write to. + The value to convert to JSON. + An object that specifies serialization options to use. + + + Writes a dictionary key as a JSON property name. + The to write to. + The value to convert. The value of determines if the converter handles values. + The options to use when writing the value. + + + Gets a value that indicates whether should be passed to the converter on serialization, and whether should be passed on deserialization. + + + Gets the type being converted by the current converter instance. + + + When placed on a property or type, specifies the converter type to use. + + + Initializes a new instance of . + + + Initializes a new instance of with the specified converter type. + The type of the converter. + + + When overridden in a derived class and is , allows the derived class to create a in order to pass additional state. + The type of the converter. + The custom converter. + + + Gets the type of the , or if it was created without a type. + The type of the , or if it was created without a type. + + + Supports converting several types by using a factory pattern. + + + When overridden in a derived class, initializes a new instance of the class. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which is compatible with . + + + Gets the type being converted by the current converter instance. + + + When placed on a type declaration, indicates that the specified subtype should be opted into polymorphic serialization. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared based type. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + A derived type that should be supported in polymorphic serialization of the declared base type. + + + The type discriminator identifier to be used for the serialization of the subtype. + + + When placed on a property of type , any properties that do not have a matching member are added to that dictionary during deserialization and written during serialization. + + + Initializes a new instance of the class. + + + Prevents a property from being serialized or deserialized. + + + Initializes a new instance of . + + + Gets or sets the condition that must be met before a property will be ignored. + + + Controls how the ignores properties on serialization and deserialization. + + + Property is always ignored. + + + Property is always serialized and deserialized, regardless of configuration. + + + Property is ignored only if it equals the default value for its type. + + + Property is ignored if its value is . This is applied only to reference-type properties and fields. + + + Indicates that the member should be included for serialization and deserialization. + The attribute is applied to a non-public property. + + + Initializes a new instance of . + + + The to be used at run time. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that JSON property names should not be converted. + + + Converter to convert enums to and from numeric values. + The enum type that this converter targets. + + + Initializes a new instance of . + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Determines how handles numbers when serializing and deserializing. + + + The "NaN", "Infinity", and "-Infinity" tokens can be read as floating-point constants, and the and values for these constants will be written as their corresponding JSON string representations. + + + Numbers can be read from tokens. Does not prevent numbers from being read from token. + + + Numbers will only be read from tokens and will only be written as JSON numbers (without quotes). + + + Numbers will be written as JSON strings (with quotes), not as JSON numbers. + + + When placed on a type, property, or field, indicates what settings should be used when serializing or deserializing numbers. + + + Initializes a new instance of . + A bitwise combination of the enumeration values that specify how number types should be handled when serializing or deserializing. + + + Indicates what settings should be used when serializing or deserializing numbers. + An object that determines the number serialization and deserialization settings. + + + Determines how deserialization will handle object creation for fields or properties. + + + Attempt to populate any instances already found on a deserialized field or property. + + + A new instance will always be created when deserializing a field or property. + + + Determines how deserialization handles object creation for fields or properties. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the configuration to use when deserializing members. + + + When placed on a type, indicates that the type should be serialized polymorphically. + + + Creates a new instance. + + + Gets or sets a value that indicates whether the deserializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + + to instruct the deserializer to ignore any unrecognized type discriminator IDs and revert to the contract of the base type; to fail the deserialization for unrecognized type discriminator IDs. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + + + Specifies the property name that is present in the JSON when serializing and deserializing. This overrides any naming policy specified by . + + + Initializes a new instance of with the specified property name. + The name of the property. + + + Gets the name of the property. + The name of the property. + + + Specifies the property order that is present in the JSON when serializing. Lower values are serialized first. + If the attribute is not specified, the default value is 0. + + + Initializes a new instance of with the specified order. + The order of the property. + + + Gets the serialization order of the property. + The serialization order of the property. + + + Indicates that the annotated member must bind to a JSON property on deserialization. + + + Initializes a new instance of . + + + Instructs the System.Text.Json source generator to generate source code to help optimize performance when serializing and deserializing instances of the specified type and types in its object graph. + + + Initializes a new instance of with the specified type. + The type to generate source code for. + + + Gets or sets the mode that indicates what the source generator should generate for the type. If the value is , then the setting specified on will be used. + + + Gets or sets the name of the property for the generated for the type on the generated, derived type. + + + Provides metadata about a set of types that is relevant to JSON serialization. + + + Creates an instance of and binds it with the indicated . + The run time provided options for the context instance. + + + Gets metadata for the specified type. + The type to fetch metadata for. + The metadata for the specified type, or if the context has no metadata for the type. + + + Resolves a contract for the requested type and options. + The type to be resolved. + The configuration to use when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Gets the default run-time options for the context. + + + Gets the run-time specified options of the context. If no options were passed when instantiating the context, then a new instance is bound and returned. + + + The generation mode for the System.Text.Json source generator. + + + When specified on , indicates that both type-metadata initialization logic and optimized serialization logic should be generated for all types. When specified on , indicates that the setting on should be used. + + + Instructs the JSON source generator to generate type-metadata initialization logic. + + + Instructs the JSON source generator to generate optimized serialization logic. + + + Instructs the System.Text.Json source generator to assume the specified options will be used at run time via . + + + Initializes a new instance of . + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + is invalid. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default ignore condition. + + + Gets or sets the default value of . + + + Gets or sets the source generation mode for types that don't explicitly set the mode with . + + + Gets or sets a value that indicates whether to ignore read-only fields. + + + Gets or sets a value that indicates whether to ignore read-only properties. + + + Gets or sets a value that indicates whether to include fields for serialization and deserialization. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a built-in naming policy to convert JSON property names with. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a value that indicates whether the source generator defaults to instead of numeric serialization for all enum types encountered in its type graph. + + + Gets or sets a value that indicates whether JSON output is pretty-printed. + + + Converts enumeration values to and from strings. + + + Initializes an instance of the class with the default naming policy that allows integer values. + + + Initializes an instance of the class with a specified naming policy and a value that indicates whether undefined enumeration values are allowed. + The optional naming policy for writing enum values. + + to allow undefined enum values; otherwise, . When , if an enum value isn't defined, it will output as a number rather than a string. + + + Determines whether the specified type can be converted to an enum. + The type to be checked. + + true if the type can be converted; otherwise, false. + + + Creates a converter for the specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Converter to convert enums to and from strings. + The enum type that this converter targets. + + + Initializes a new instance of with the default naming policy and that allows integer values. + + + Initializes a new instance of . + Optional naming policy for writing enum values. + + to allow undefined enum values. When , if an enum value isn't defined, it outputs as a number rather than a string. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Defines how objects of a derived runtime type that has not been explicitly declared for polymorphic serialization should be handled. + + + An object of undeclared runtime type will fail polymorphic serialization. + + + An object of undeclared runtime type will fall back to the serialization contract of the base type. + + + An object of undeclared runtime type will revert to the serialization contract of the nearest declared ancestor type. + Certain interface hierarchies are not supported due to diamond ambiguity constraints. + + + Defines how deserializing a type declared as an is handled during deserialization. + + + A type declared as is deserialized as a . + + + A type declared as is deserialized as a . + + + Determines how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Throws an exception when an unmapped property is encountered. + + + Silently skips any unmapped properties. This is the default behavior. + + + When placed on a type, determines the configuration for the specific type, overriding the global setting. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the unmapped member handling setting for the attribute. + + + Defines the default, reflection-based JSON contract resolver used by System.Text.Json. + + + Creates a mutable instance. + + + Resolves a JSON contract for a given and configuration. + The type for which to resolve a JSON contract. + A instance used to determine contract configuration. + + or is . + A defining a reflection-derived JSON contract for . + + + Gets a list of user-defined callbacks that can be used to modify the initial contract. + + + Used to resolve the JSON serialization contract for requested types. + + + Resolves a contract for the requested type and options. + Type to be resolved. + Configuration used when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Provides serialization metadata about a collection type. + The collection type. + + + + A instance representing the element type. + + + If a dictionary type, the instance representing the key type. + + + The option to apply to number collection elements. + + + A to create an instance of the collection when deserializing. + + + An optimized serialization implementation assuming pre-determined defaults. + + + Represents a supported derived type defined in the metadata of a polymorphic type. + + + Initializes a new instance of the class that represents a supported derived type without a type discriminator. + The derived type to be supported by the polymorphic type metadata. + + + Initializes a new instance of the class that represents a supported derived type with an integer type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Initializes a new instance of the class that represents a supported derived type with a string type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Gets a derived type that should be supported in polymorphic serialization of the declared base type. + + + Gets the type discriminator identifier to be used for the serialization of the subtype. + + + Provides helpers to create and initialize metadata for JSON-serializable types. + + + Creates serialization metadata for an array. + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates serialization metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for and types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for non-dictionary immutable collection types. + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a complex class or struct. + The to use for serialization and deserialization. + Provides serialization metadata about an object type with constructors, properties, and fields. + The type of the class or struct. + + or is . + A instance representing the class or struct. + + + Creates metadata for a property or field. + The to use for serialization and deserialization. + Provides serialization metadata about the property or field. + The type that the converter for the property returns or accepts when converting JSON data. + A instance initialized with the provided metadata. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a primitive or a type with a custom converter. + The to use for serialization and deserialization. + + The generic type definition. + A instance representing the type. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the enum type. + A instance that converts values. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the underlying nullable type. + A instance that converts values + + + Creates a instance that converts values. + Serialization metadata for the underlying nullable type. + The generic definition for the underlying nullable type. + A instance that converts values + + + Gets a type converter that throws a . + The generic definition for the type. + A instance that throws + + + Gets an object that converts values. + + + Gets an object that converts byte array values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + An instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Provides serialization metadata about an object type with constructors, properties, and fields. + The object type to serialize or deserialize. + + + + Provides a mechanism to initialize metadata for a parameterized constructor of the class or struct to be used when deserializing. + + + Gets or sets an object that specifies how number properties and fields should be processed when serializing and deserializing. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterless constructor during deserialization. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterized constructor during deserialization. + + + Gets or sets a mechanism to initialize metadata for properties and fields of the class or struct. + + + Gets or sets a serialization implementation for instances of the class or struct that assumes options specified by . + + + Provides information about a constructor parameter required for JSON deserialization. + + + + Gets or sets the default value of the parameter. + + + Gets or sets a value that specifies whether a default value was specified for the parameter. + + + Gets or sets the name of the parameter. + + + Gets or sets the type of the parameter. + + + Gets or sets the zero-based position of the parameter in the formal parameter list. + + + Defines polymorphic configuration for a specified base type. + + + Creates an empty instance. + + + Gets the list of derived types supported in the current polymorphic type configuration. + + + Gets or sets a value that indicates whether the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + The parent instance has been locked for further modification. + + if the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type; if the deserialization should fail when an unrecognized type discriminator ID is encountered. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + The parent instance has been locked for further modification. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + The parent instance has been locked for further modification. + + + Provides JSON serialization-related metadata about a property or field. + + + Gets or sets the custom attribute provider for the current property. + The instance has been locked for further modification. + + + Gets or sets a custom converter override for the current property. + The instance has been locked for further modification. + + + Gets or sets a getter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a value that indicates whether the current property is a special extension data property. + The instance has been locked for further modification. + +-or- + +The current is not valid for use with extension data. + + + Gets or sets a value that indicates whether the current property is required for deserialization to be successful. + The instance has been locked for further modification. + + + Gets or sets the JSON property name used when serializing the property. + + is . + The instance has been locked for further modification. + + + Gets or sets the applied to the current property. + The instance has been locked for further modification. + + + Gets or sets a value indicating if the property or field should be replaced or populated during deserialization. + + + Gets the value associated with the current contract instance. + + + Gets or sets the serialization order for the current property. + The instance has been locked for further modification. + + + Gets the type of the current property. + + + Gets or sets a setter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a predicate that determines whether the current property value should be serialized. + The instance has been locked for further modification. + + + Provides serialization metadata about a property or field. + The type to convert of the for the property. + + + + A for the property or field, specified by . + + + The declaring type of the property or field. + + + Provides a mechanism to get the property or field's value. + + + Whether the property was annotated with . + + + Specifies a condition for the member to be ignored. + + + Whether the property was annotated with . + + + If , indicates that the member is a property, otherwise indicates the member is a field. + + + Whether the property or field is public. + + + Whether the property or field is a virtual property. + + + The name to be used when processing the property or field, specified by . + + + If the property or field is a number, specifies how it should processed when serializing and deserializing. + + + The name of the property or field. + + + The info for the property or field's type. + + + Provides a mechanism to set the property or field's value. + + + Provides JSON serialization-related metadata about a type. + + + Creates a blank instance for the current . + The declared type for the property. + The property name used in JSON serialization and deserialization. + + or is . + + cannot be used for serialization. + The instance has been locked for further modification. + A blank instance. + + + Creates a blank instance. + The type for which contract metadata is specified. + The instance the metadata is associated with. + + or is . + + cannot be used for serialization. + A blank instance. + + + Creates a blank instance. + The instance the metadata is associated with. + The type for which contract metadata is specified. + + is . + A blank instance. + + + Locks the current instance for further modification. + + + Gets the associated with the current type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Gets a value that indicates whether the current instance has been locked for modification. + + + Gets a value that describes the kind of contract metadata that the current instance specifies. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + An invalid value was specified. + + + Gets or sets a callback to be invoked after deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked after serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets the value associated with the current instance. + + + Gets or sets the from which this metadata instance originated. + The instance has been locked for further modification. + + + Gets or sets a configuration object specifying polymorphism metadata. + + has been associated with a different instance. + The instance has been locked for further modification. + +-or- + +Polymorphic serialization is not supported for the current metadata . + + + Gets or sets the preferred value for properties contained in the type. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for JsonTypeInfoKind.Object. + Specified an invalid value. + + + Gets the list of metadata corresponding to the current type. + + + Gets the for which the JSON serialization contract is being defined. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for . + An invalid value was specified. + + + Provides JSON serialization-related metadata about a type. + The generic definition of the type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Serializes an instance of using values specified at design time. + + + Describes the kind of contract metadata a specifies. + + + Type is serialized as a dictionary with key/value pair entries. + + + Type is serialized as a collection with elements. + + + Type is either a simple value or uses a custom converter. + + + Type is serialized as an object with properties. + + + Contains utilities and combinators acting on . + + + Combines multiple sources into one. + Sequence of contract resolvers to be queried for metadata. + + is . + A combining results from . + + + Creates a resolver and applies modifications to the metadata generated by the source . + The source resolver generating metadata. + The delegate that modifies non- results. + A new instance with modifications applied. + + + Defines how the deals with references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Returns the used for each serialization call. + The resolver to use for serialization and deserialization. + + + Gets an object that indicates whether an object is ignored when a reference cycle is detected during serialization. + + + Gets an object that indicates whether metadata properties are honored when JSON objects and arrays are deserialized into reference types, and written when reference types are serialized. This is necessary to create round-trippable JSON from objects that contain cycles or duplicate references. + + + Defines how the deals with references on serialization and deserialization. + The type of the to create on each serialization or deserialization call. + + + Initializes a new instance of the generic class that can create a instance of the specified type. + + + Creates a new of type used for each serialization call. + The new resolver to use for serialization and deserialization. + + + Defines how the deals with references on serialization and deserialization. + Defines the core behavior of preserving references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Adds an entry to the bag of references using the specified id and value. + This method gets called when an $id metadata property from a JSON object is read. + The identifier of the JSON object or array. + The value of the CLR reference type object that results from parsing the JSON object. + + + Gets the reference identifier of the specified value if exists; otherwise a new id is assigned. + This method gets called before a CLR object is written so we can decide whether to write $id and enumerate the rest of its properties or $ref and step into the next object. + The value of the CLR reference type object to get an id for. + When this method returns, if a reference to value already exists; otherwise, . + The reference id for the specified object. + + + Returns the CLR reference type object related to the specified reference id. + This method gets called when $ref metadata property is read. + The reference id related to the returned object. + The reference type object related to the specified reference id. + + + Provides a high-performance API for forward-only, read-only access to UTF-8 encoded JSON text. + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Copies the current JSON token value from the source, unescaped, as UTF-8 bytes to a buffer. + A buffer to write the unescaped UTF-8 bytes into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of bytes written to . + + + Copies the current JSON token value from the source, unescaped, as UTF-16 characters to a buffer. + A buffer to write the transcoded UTF-16 characters into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of characters written to . + + + Reads the next JSON token value from the source as a . + The value of the JSON token isn't a Boolean value (that is, or ). + + if the is ; if the is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Byte.MinValue or greater than Byte.MaxValue. + The value of the UTF-8 encoded token. + + + Parses the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array. + The type of the JSON token is not a . + The value is not encoded as Base64 text, so it can't be decoded to bytes. + +-or- + +The value contains invalid or more than two padding characters. + +-or- + +The value is incomplete. That is, the JSON string length is not a multiple of 4. + The byte array that represents the current JSON token value. + + + Parses the current JSON token value from the source as a comment and transcodes it as a . + The JSON token is not a comment. + The comment that represents the current JSON token value. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time offset, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Decimal.MinValue or greater than Decimal.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Double.MinValue or greater than Double.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value is in an unsupported format for a Guid. + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + The GUID value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Int16.MinValue or greater than Int16.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int32.MinValue or greater than Int32.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int64.MinValue or greater than Int64.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Parses the current JSON token value from the source as an . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than SByte.MinValue or greater than SByte.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Single.MinValue or greater than Single.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source unescaped and transcodes it as a string. + The JSON token value isn't a string (that is, not a , , or ). + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The token value parsed to a string, or if is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than UInt16.MinValue or greater than UInt16.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt32.MinValue or greater than UInt32.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt64.MinValue or greater than UInt64.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token from the input source. + An invalid JSON token according to the JSON RFC is encountered. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + if the token was read successfully; otherwise, . + + + Skips the children of the current JSON token. + The reader was given partial data with more data to follow (that is, is ). + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decoded binary representation of the Base64 text. + The JSON token is not a . + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to skip the children of the current JSON token. + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or - + +The current depth exceeds the recursive limit set by the maximum depth. + + if there was enough data for the children to be skipped successfully; otherwise, . + + + Compares the UTF-8 encoded text in a read-only byte span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The UTF-8 encoded text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the UTF-8 encoded lookup text; otherwise, . + + + Compares the text in a read-only character span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Compares the string text to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Gets the total number of bytes consumed so far by this instance of the . + The total number of bytes consumed so far. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the current state to pass to a constructor with more data. + The current reader state. + + + Gets a value that indicates which Value property to use to get the token value. + + if should be used to get the token value; if should be used instead. + + + Gets a value that indicates whether all the JSON data was provided or there is more data to come. + + if the reader was constructed with the input span or sequence containing the entire JSON data to process; if the reader was constructed with an input span or sequence that may contain partial JSON data with more data to follow. + + + Gets the current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + The current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + + + Gets the index that the last processed JSON token starts at (within the given UTF-8 encoded input text), skipping any white space. + The starting index of the last processed JSON token within the given UTF-8 encoded input text. + + + Gets the type of the last processed JSON token in the UTF-8 encoded JSON text. + The type of the last processed JSON token. + + + Gets a value that indicates whether the current or properties contain escape sequences per RFC 8259 section 7, and therefore require unescaping before being consumed. + + + Gets the raw value of the last processed token as a ReadOnlySequence<byte> slice of the input payload, only if the token is contained within multiple segments. + A byte read-only sequence. + + + Gets the raw value of the last processed token as a ReadOnlySpan<byte> slice of the input payload, if the token fits in a single segment or if the reader was constructed with a JSON payload contained in a ReadOnlySpan<byte>. + A read-only span of bytes. + + + Provides a high-performance API for forward-only, non-cached writing of UTF-8 encoded JSON text. + + + Initializes a new instance of the class using the specified to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Initializes a new instance of the class using the specified stream to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + + + Asynchronously commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + A task representing the asynchronous dispose operation. + + + Commits the JSON text written so far, which makes it visible to the output destination. + This instance has been disposed. + + + Asynchronously commits the JSON text written so far, which makes it visible to the output destination. + The token to monitor for cancellation requests. The default value is . + This instance has been disposed. + A task representing the asynchronous flush operation. + + + Resets the internal state of this instance so that it can be reused. + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The JSON-encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the raw bytes value as a Base64 encoded JSON string as an element of a JSON array. + The binary data to be written as a Base64 encoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON literal true or false) as an element of a JSON array. + The value to be written as a JSON literal true or false as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value as a JSON comment. + The UTF-8 encoded value to be written as a JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a UTF-16 text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a string text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + The parameter is . + + + Writes the end of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the end of a JSON object. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and the JSON literal null as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the JSON literal null as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the UTF-8 property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + is . + + + Writes the pre-encoded property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; to skip validation. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input + is not a valid, complete, single JSON value according to the JSON RFC + or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + + is . + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the beginning of a JSON array. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON array to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON array with a pre-encoded property name as the key. + The JSON encoded property name of the JSON array to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the beginning of a JSON object. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON object with a pre-encoded property name as the key. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the UTF-8 property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value (as a JSON string) as an element of a JSON array. + The UTF-8 encoded value to be written as a JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a string text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded text value (as a JSON string) as an element of a JSON array. + The JSON encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + Validation is enabled, and the write operation would produce invalid JSON. + + + Gets the total number of bytes committed to the output by the current instance so far. + The total number of bytes committed to the output by the so far. + + + Gets the number of bytes written by the so far that have not yet been flushed to the output and committed. + The number of bytes written so far by the that have not yet been flushed to the output and committed. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the custom behavior when writing JSON using this instance, which indicates whether to format the output while writing, whether to skip structural JSON validation, and which characters to escape. + The custom behavior of this instance of the writer for formatting, validating, and escaping. + + + \ No newline at end of file diff --git a/packages/System.Text.Json.8.0.0/lib/netstandard2.0/System.Text.Json.dll b/packages/System.Text.Json.8.0.0/lib/netstandard2.0/System.Text.Json.dll new file mode 100644 index 0000000..45b6bc0 Binary files /dev/null and b/packages/System.Text.Json.8.0.0/lib/netstandard2.0/System.Text.Json.dll differ diff --git a/packages/System.Text.Json.8.0.0/lib/netstandard2.0/System.Text.Json.xml b/packages/System.Text.Json.8.0.0/lib/netstandard2.0/System.Text.Json.xml new file mode 100644 index 0000000..da1a571 --- /dev/null +++ b/packages/System.Text.Json.8.0.0/lib/netstandard2.0/System.Text.Json.xml @@ -0,0 +1,5785 @@ + + + + System.Text.Json + + + + Defines how the struct handles comments. + + + Allows comments within the JSON input and treats them as valid tokens. While reading, the caller can access the comment values. + + + Doesn't allow comments within the JSON input. Comments are treated as invalid JSON if found, and a is thrown. This is the default value. + + + Allows comments within the JSON input and ignores them. The behaves as if no comments are present. + + + Provides a mechanism for examining the structural content of a JSON value without automatically instantiating data values. + + + Releases the resources used by this instance. + + + Parses a sequence as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses memory as UTF-8-encoded text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses text representing a single JSON string value into a JsonDocument. + The JSON text to parse. + Options to control the reader behavior during parsing. + + does not represent a valid single JSON value. + + contains unsupported options. + A JsonDocument representation of the JSON value. + + + Parses a as UTF-8-encoded data representing a single JSON value into a JsonDocument. The stream is read to completion. + The JSON data to parse. + Options to control the reader behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + + contains unsupported options. + A task to produce a JsonDocument representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + A JsonDocument representing the value (and nested values) read from the reader. + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + When the method returns, contains the parsed document. + + contains unsupported options. + +-or- + +The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonDocument; if the reader ran out of data while parsing. All other situations result in an exception being thrown. + + + Writes the document to the provided writer as a JSON value. + The writer to which to write the document. + The parameter is . + The of this would result in invalid JSON. + The parent has been disposed. + + + Gets the root element of this JSON document. + A representing the value of the document. + + + Provides the ability for the user to define custom behavior when parsing JSON to create a . + + + Gets or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma at the end of a list of JSON values in an object or array is allowed; otherwise, . Default is + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The comment handling enum is set to a value that is not supported (or not within the enum range). + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when parsing JSON data, with the default (that is, 0) indicating a maximum depth of 64. + The max depth is set to a negative value. + The maximum depth allowed when parsing JSON data. + + + Represents a specific JSON value within a . + + + Gets a JsonElement that can be safely stored beyond the lifetime of the original . + A JsonElement that can be safely stored beyond the lifetime of the original . + + + Gets an enumerator to enumerate the values in the JSON array represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the values in the JSON array represented by this JsonElement. + + + Gets an enumerator to enumerate the properties in the JSON object represented by this JsonElement. + This value's is not . + The parent has been disposed. + An enumerator to enumerate the properties in the JSON object represented by this JsonElement. + + + Gets the number of values contained within the current array value. + This value's is not . + The parent has been disposed. + The number of values contained within the current array value. + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a byte array. + This value's is not . + The value is not encoded as Base64 text and hence cannot be decoded to bytes. + The parent has been disposed. + The value decoded as a byte array. + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be read as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as an . + + + Gets a representing the value of a required property identified by . + The UTF-8 representation (with no Byte-Order-Mark (BOM)) of the name of the property to return. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + The parent has been disposed. + A representing the value of the requested property. + + + Gets a representing the value of a required property identified by . + The name of the property whose value is to be returned. + This value's is not . + No property was found with the requested name. + + is . + The parent has been disposed. + A representing the value of the requested property. + + + Gets a string that represents the original input data backing this value. + The parent has been disposed. + The original input data backing this value. + + + Gets the current JSON number as an . + This value's is not . + The value cannot be represented as an . + The parent has been disposed. + The current JSON number as an . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the value of the element as a . + This value's is neither nor . + The parent has been disposed. + The value of the element as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Gets the current JSON number as a . + This value's is not . + The value cannot be represented as a . + The parent has been disposed. + The current JSON number as a . + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + A JsonElement representing the value (and nested values) read from the reader. + + + Gets a string representation for the current value appropriate to the value type. + The parent has been disposed. + A string representation for the current value appropriate to the value type. + + + Attempts to represent the current JSON number as a . + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a byte array, assuming that it is Base64 encoded. + If the method succeeds, contains the decoded binary representation of the Base64 text. + This value's is not . + The parent has been disposed. + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON string as a . + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + This value's is not . + The parent has been disposed. + + if the string can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The UTF-8 (with no Byte-Order-Mark (BOM)) representation of the name of the property to return. + Receives the value of the located property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, the method assigns its value to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + The parent has been disposed. + + if the property was found; otherwise, . + + + Looks for a property named in the current object, returning a value that indicates whether or not such a property exists. When the property exists, its value is assigned to the argument. + The name of the property to find. + When this method returns, contains the value of the specified property. + This value's is not . + + is . + The parent has been disposed. + + if the property was found; otherwise, . + + + Attempts to represent the current JSON number as an . + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as an ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to represent the current JSON number as a . + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + This value's is not . + The parent has been disposed. + + if the number can be represented as a ; otherwise, . + + + Attempts to parse one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Receives the parsed element. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + + if a value was read and parsed into a JsonElement; if the reader ran out of data while parsing. + All other situations result in an exception being thrown. + + + Compares the text represented by a UTF8-encoded byte span to the string value of this element. + The UTF-8 encoded text to compare against. + This value's is not . + + if the string value of this element has the same UTF-8 encoding as + ; otherwise, . + + + Compares a specified read-only character span to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Compares a specified string to the string value of this element. + The text to compare against. + This value's is not . + + if the string value of this element matches ; otherwise, . + + + Writes the element to the specified writer as a JSON value. + The writer to which to write the element. + The parameter is . + The of this value is . + The parent has been disposed. + + + Gets the value at the specified index if the current value is an . + The item index. + This value's is not . + + is not in the range [0, ()). + The parent has been disposed. + The value at the specified index. + + + Gets the type of the current JSON value. + The parent has been disposed. + The type of the current JSON value. + + + Represents an enumerator for the contents of a JSON array. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the array. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for an array of that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Represents an enumerator for the properties of a JSON object. + + + Releases the resources used by this instance. + + + Returns an enumerator that iterates the properties of an object. + An enumerator that can be used to iterate through the object. + + + Advances the enumerator to the next element of the collection. + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator for objects that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An enumerator that can be used to iterate through the collection. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Gets the element in the collection at the current position of the enumerator. + The element in the collection at the current position of the enumerator. + + + Provides methods to transform UTF-8 or UTF-16 encoded text into a form that is suitable for JSON. + + + Encodes a UTF-8 text value as a JSON string. + The UTF-8 encoded text to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-8 bytes. + The encoded JSON text. + + + Encodes a specified text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Encodes the string text value as a JSON string. + The value to convert to JSON encoded text. + The encoder to use when escaping the string, or to use the default encoder. + + is . + + is too large. + +-or- + + contains invalid UTF-16 characters. + The encoded JSON text. + + + Determines whether this instance and a specified object, which must also be a instance, have the same value. + The object to compare to this instance. + + if the current instance and are equal; otherwise, . + + + Determines whether this instance and another specified instance have the same value. + The object to compare to this instance. + + if this instance and have the same value; otherwise, . + + + Returns the hash code for this . + The hash code for this instance. + + + Converts the value of this instance to a . + The underlying UTF-16 encoded string. + + + Gets the UTF-8 encoded representation of the pre-encoded JSON text. + The UTF-8 encoded representation of the pre-encoded JSON text. + + + Gets the UTF-16 encoded representation of the pre-encoded JSON text as a . + + + Defines a custom exception object that is thrown when invalid JSON text is encountered, the defined maximum depth is passed, or the JSON text is not compatible with the type of a property on an object. + + + Initializes a new instance of the class. + + + Creates a new exception object with serialized data. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + is . + + + Initializes a new instance of the class with a specified error message. + The context-specific error message. + + + Initializes a new instance of the class, with a specified error message and a reference to the inner exception that is the cause of this exception. + The context-specific error message. + The exception that caused the current exception. + + + Creates a new exception object to relay error information to the user. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count within the current line (starting at 0) where the invalid JSON was encountered. + + + Creates a new exception object to relay error information to the user that includes a specified inner exception. + The context-specific error message. + The path where the invalid JSON was encountered. + The line number (starting at 0) at which the invalid JSON was encountered when deserializing. + The byte count (starting at 0) within the current line where the invalid JSON was encountered. + The exception that caused the current exception. + + + Sets the with information about the exception. + The serialized object data about the exception being thrown. + An object that contains contextual information about the source or destination. + + + Gets the zero-based number of bytes read within the current line before the exception. + The zero-based number of bytes read within the current line before the exception. + + + Gets the zero-based number of lines read before the exception. + The zero-based number of lines read before the exception. + + + Gets a message that describes the current exception. + The error message that describes the current exception. + + + Gets The path within the JSON where the exception was encountered. + The path within the JSON where the exception was encountered. + + + Determines the naming policy used to convert a string-based name to another format, such as a camel-casing format. + + + Initializes a new instance of . + + + When overridden in a derived class, converts the specified name according to the policy. + The name to convert. + The converted name. + + + Gets the naming policy for camel-casing. + The naming policy for camel-casing. + + + Gets the naming policy for lowercase kebab-casing. + + + Gets the naming policy for uppercase kebab-casing. + + + Gets the naming policy for lowercase snake-casing. + + + Gets the naming policy for uppercase snake-casing. + + + Represents a single property for a JSON object. + + + Compares the specified UTF-8 encoded text to the name of this property. + The UTF-8 encoded text to compare against. + This value's is not . + + if the name of this property has the same UTF-8 encoding as ; otherwise, . + + + Compares the specified text as a character span to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise, . + + + Compares the specified string to the name of this property. + The text to compare against. + This value's is not . + + if the name of this property matches ; otherwise . + + + Provides a string representation of the property for debugging purposes. + A string containing the uninterpreted value of the property, beginning at the declaring open-quote and ending at the last character that is part of the value. + + + Writes the property to the provided writer as a named JSON object property. + The writer to which to write the property. + + is . + + is too large to be a JSON object property. + The of this JSON property's would result in invalid JSON. + The parent has been disposed. + + + Gets the name of this property. + The name of this property. + + + Gets the value of this property. + The value of this property. + + + Provides the ability for the user to define custom behavior when reading JSON. + + + Gets or sets a value that defines whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being read. + + if an extra comma is allowed; otherwise, . + + + Gets or sets a value that determines how the handles comments when reading through the JSON data. + The property is being set to a value that is not a member of the enumeration. + One of the enumeration values that indicates how comments are handled. + + + Gets or sets the maximum depth allowed when reading JSON, with the default (that is, 0) indicating a maximum depth of 64. + The maximum depth is being set to a negative value. + The maximum depth allowed when reading JSON. + + + Defines an opaque type that holds and saves all the relevant state information, which must be provided to the to continue reading after processing incomplete data. + + + Constructs a new instance. + Defines the customized behavior of the that is different from the JSON RFC (for example how to handle comments, or the maximum depth allowed when reading). By default, the follows the JSON RFC strictly (comments within the JSON are invalid) and reads up to a maximum depth of 64. + The maximum depth is set to a non-positive value (< 0). + + + Gets the custom behavior to use when reading JSON data using the struct that may deviate from strict adherence to the JSON specification, which is the default behavior. + The custom behavior to use when reading JSON data. + + + Provides functionality to serialize objects or value types to JSON and to deserialize JSON into objects or value types. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + + or is . + The JSON is invalid, + or there is remaining data in the Stream. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + + or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + The JSON is invalid, + or there is remaining data in the buffer. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance specified by the . + JSON text to parse. + Metadata about the type to convert. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + +There is remaining data in the string beyond a single JSON value. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of a specified type. + The JSON text to parse. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + +-or- + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + or is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Converts the representing a single JSON value into an instance specified by the . + The to convert. + Metadata about the type to convert. + + is . + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + Options to control the behavior during parsing. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + The type of the object to convert to and return. + A metadata provider for serializable types. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance specified by the . + The reader to read. + Metadata about the type to convert. + The JSON is invalid, + is not compatible with the JSON, + or a value could not be read from the reader. + + is using unsupported options. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader and converts it into an instance of a specified type. + The reader to read the JSON from. + The type of the object to convert to and return. + Options to control the serializer behavior during reading. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + The type of the object to convert to and return. + A metadata provider for serializable types. + + or is . + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Options to control the behavior during reading. + The type to deserialize the JSON value into. + + is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the UTF-8 encoded text. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the UTF-8 encoded text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the span beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into an instance of the type specified by a generic type parameter. + The JSON text to parse. + Options to control the behavior during parsing. + The target type of the JSON value. + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Parses the text representing a single JSON value into a . + JSON text to parse. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the string beyond a single JSON value. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + +-or- + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Options to control the behavior during parsing. + The type to deserialize the JSON value into. + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the representing a single JSON value into a . + The to convert. + Metadata about the type to convert. + The type to deserialize the JSON value into. + + is . + + is not compatible with the JSON. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into an instance of the type specified by a generic type parameter. + The reader to read the JSON from. + Options to control serializer behavior during reading. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +A value could not be read from the reader. + + uses unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads one JSON value (including objects or arrays) from the provided reader into a . + The reader to read. + Metadata about the type to convert. + The type to deserialize the JSON value into. + The JSON is invalid, is not compatible with the JSON, or a value could not be read from the reader. + + is using unsupported options. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into an instance specified by the . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The that can be used to cancel the read operation. + + or is . + The JSON is invalid, + or when there is remaining data in the Stream. + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a specified type. The stream will be read to completion. + The JSON data to parse. + The type of the object to convert to and return. + Options to control the behavior during reading. + A cancellation token that may be used to cancel the read operation. + + or is . + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + The type of the object to convert to and return. + A metadata provider for serializable types. + The that can be used to cancel the read operation. + + , , or is . + The JSON is invalid, the is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + The method on the provided did not return a compatible for . + A representation of the JSON value. + + + Asynchronously reads the UTF-8 encoded text representing a single JSON value into an instance of a type specified by a generic type parameter. The stream will be read to completion. + The JSON data to parse. + Options to control the behavior during reading. + A token that may be used to cancel the read operation. + The target type of the JSON value. + The JSON is invalid. + +-or- + + is not compatible with the JSON. + +-or- + +There is remaining data in the stream. + There is no compatible for or its serializable members. + + is . + A representation of the JSON value. + + + Reads the UTF-8 encoded text representing a single JSON value into a . + The Stream will be read to completion. + JSON data to parse. + Metadata about the type to convert. + The which may be used to cancel the read operation. + The type to deserialize the JSON value into. + + or is . + The JSON is invalid, is not compatible with the JSON, or there is remaining data in the Stream. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Options to control the behavior during reading. + The which may be used to cancel the read operation. + The element type to deserialize asynchronously. + + is . + An representation of the provided JSON array. + + + Wraps the UTF-8 encoded text into an that can be used to deserialize root-level JSON arrays in a streaming manner. + JSON data to parse. + Metadata about the element type to convert. + The that can be used to cancel the read operation. + The element type to deserialize asynchronously. + + or is . + An representation of the provided JSON array. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the value of a specified type into a JSON string. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + + or is . + + does not match the type of . + + + Writes the JSON representation of the specified type to the provided writer. + The JSON writer to write to. + The value to convert and write. + The type of the to convert. + Options to control serialization behavior. + + is not compatible with + + or is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + A JSON writer to write to. + The value to convert and write. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + + Converts the value of a type specified by a generic type parameter into a JSON string. + The value to convert. + Options to control serialization behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A JSON string representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes the JSON representation of a type specified by a generic type parameter to the provided writer. + A JSON writer to write to. + The value to convert and write. + Options to control serialization behavior. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + + + Writes one JSON value (including objects or arrays) to the provided writer. + The writer to write. + The value to convert and write. + Metadata about the type to convert. + The type of the value to serialize. + + or is . + There is no compatible for or its serializable members. + + + Converts the provided value to UTF-8 encoded JSON text and writes it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + + is . + + does not match the type of . + A task that represents the asynchronous write operation. + + + Asynchronously converts the value of a specified type to UTF-8 encoded JSON text and writes it to the specified stream. + The UTF-8 stream to write to. + The value to convert. + The type of the to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + + is not compatible with . + + or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + The that can be used to cancel the write operation. + + is not compatible with . + + , , or is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Asynchronously converts a value of a type specified by a generic type parameter to UTF-8 encoded JSON text and writes it to a stream. + The UTF-8 stream to write to. + The value to convert. + Options to control serialization behavior. + A token that may be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value to UTF-8 encoded JSON text and write it to the . + The UTF-8 to write to. + The value to convert. + Metadata about the type to convert. + The that can be used to cancel the write operation. + The type of the value to serialize. + + is . + There is no compatible for or its serializable members. + A task that represents the asynchronous write operation. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A representation of the value. + + + Converts the provided value into a . + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + + or is . + A representation of the value. + + + Converts the provided value into a . + The value to convert. + Options to control the conversion behavior. + The type of the value to serialize. + There is no compatible for or its serializable members. + A representation of the JSON value. + + + Converts the provided value into a . + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A representation of the value. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + + is . + + does not match the type of . + A UTF-8 representation of the value. + + + Converts a value of the specified type into a JSON string, encoded as UTF-8 bytes. + The value to convert. + The type of the to convert. + Options to control the conversion behavior. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + The type of the to convert. + A metadata provider for serializable types. + + is not compatible with . + + is . + There is no compatible for or its serializable members. + The method of the provided returns for the type to convert. + A UTF-8 representation of the value. + + + Converts the value of a type specified by a generic type parameter into a JSON string, encoded as UTF-8 bytes. + The value to convert. + Options to control the conversion behavior. + The type of the value. + There is no compatible for or its serializable members. + A JSON string representation of the value, encoded as UTF-8 bytes. + + + Converts the provided value into a array. + The value to convert. + Metadata about the type to convert. + The type of the value to serialize. + There is no compatible for or its serializable members. + + is . + A UTF-8 representation of the value. + + + Indicates whether unconfigured instances should be set to use the reflection-based . + + + Specifies scenario-based default serialization options that can be used to construct a instance. + + + + General-purpose option values. These are the same settings that are applied if a member isn't specified. + For information about the default property values that are applied, see JsonSerializerOptions properties. + + + + + Option values appropriate to Web-based scenarios. + This member implies that: + - Property names are treated as case-insensitive. + - "camelCase" name formatting should be employed. + - Quoted numbers (JSON strings for number properties) are allowed. + + + + Provides options to be used with . + + + Initializes a new instance of the class. + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + + Copies the options from a instance to a new instance. + The options instance to copy options from. + + is . + + + Appends a new to the metadata resolution of the current instance. + The generic definition of the specified context type. + + + Returns the converter for the specified type. + The type to return a converter for. + The configured for returned an invalid converter. + There is no compatible for or its serializable members. + The first converter that supports the given type. + + + Gets the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + + is . + + is not valid for serialization. + The contract metadata resolved for . + + + Marks the current instance as read-only to prevent any further user modification. + The instance does not specify a setting. + + + Marks the current instance as read-only preventing any further user modification. + Populates unconfigured properties with the reflection-based default. + + The instance does not specify a setting. Thrown when is . + -or- + The feature switch has been turned off. + + + + Tries to get the contract metadata resolved by the current instance. + The type to resolve contract metadata for. + When this method returns, contains the resolved contract metadata, or if the contract could not be resolved. + + is . + + is not valid for serialization. + + if a contract for was found, or otherwise. + + + Get or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being deserialized. + This property was set after serialization or deserialization has occurred. + + if an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored); otherwise. + + + Gets the list of user-defined converters that were registered. + The list of custom converters. + + + Gets a read-only, singleton instance of that uses the default configuration. + + + Gets or sets the default buffer size, in bytes, to use when creating temporary buffers. + The buffer size is less than 1. + This property was set after serialization or deserialization has occurred. + The default buffer size in bytes. + + + Gets or sets a value that determines when properties with default values are ignored during serialization or deserialization. + The default value is . + This property is set to . + This property is set after serialization or deserialization has occurred. + +-or- + + has been set to . These properties cannot be used together. + + + Gets or sets the policy used to convert a key's name to another format, such as camel-casing. + The policy used to convert a key's name to another format. + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoding. + + + Gets or sets a value that indicates whether values are ignored during serialization and deserialization. The default value is . + This property was set after serialization or deserialization has occurred. + +-or- + + has been set to a non-default value. These properties cannot be used together. + + if null values are ignored during serialization and deserialization; otherwise, . + + + Gets or sets a value that indicates whether read-only fields are ignored during serialization. A field is read-only if it is marked with the keyword. The default value is . + This property is set after serialization or deserialization has occurred. + + if read-only fields are ignored during serialization; otherwise. + + + Gets a value that indicates whether read-only properties are ignored during serialization. The default value is . + This property was set after serialization or deserialization has occurred. + + if read-only properties are ignored during serialization; otherwise, . + + + Gets or sets a value that indicates whether fields are handled during serialization and deserialization. + The default value is . + This property is set after serialization or deserialization has occurred. + + if fields are included during serialization; otherwise, . + + + Gets a value that indicates whether the current instance has been locked for user modification. + + + Gets or sets the maximum depth allowed when serializing or deserializing JSON, with the default value of 0 indicating a maximum depth of 64. + This property was set after serialization or deserialization has occurred. + The max depth is set to a negative value. + The maximum depth allowed when serializing or deserializing JSON. + + + Gets or sets an object that specifies how number types should be handled when serializing or deserializing. + This property is set after serialization or deserialization has occurred. + + + Gets or sets the preferred object creation handling for properties when deserializing JSON. + When set to , all properties that are capable of reusing the existing instance will be populated. + + + Gets or sets a value that indicates whether a property's name uses a case-insensitive comparison during deserialization. The default value is . + + if property names are compared case-insensitively; otherwise, . + + + Gets or sets a value that specifies the policy used to convert a property's name on an object to another format, such as camel-casing, or to leave property names unchanged. + A property naming policy, or to leave property names unchanged. + + + Gets or sets a value that defines how comments are handled during deserialization. + This property was set after serialization or deserialization has occurred. + The comment handling enum is set to a value that is not supported (or not within the enum range). + A value that indicates whether comments are allowed, disallowed, or skipped. + + + Gets or sets an object that specifies how object references are handled when reading and writing JSON. + + + Gets or sets the contract resolver used by this instance. + The property is set after serialization or deserialization has occurred. + + + Gets the list of chained contract resolvers used by this instance. + + + Gets or sets an object that specifies how deserializing a type declared as an is handled during deserialization. + + + Gets or sets an object that specifies how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Gets or sets a value that indicates whether JSON should use pretty printing. By default, JSON is serialized without any extra white space. + This property was set after serialization or deserialization has occurred. + + if JSON is pretty printed on serialization; otherwise, . The default is . + + + Defines the various JSON tokens that make up a JSON text. + + + The token type is a comment string. + + + The token type is the end of a JSON array. + + + The token type is the end of a JSON object. + + + The token type is the JSON literal false. + + + There is no value (as distinct from ). This is the default token type if no data has been read by the . + + + The token type is the JSON literal null. + + + The token type is a JSON number. + + + The token type is a JSON property name. + + + The token type is the start of a JSON array. + + + The token type is the start of a JSON object. + + + The token type is a JSON string. + + + The token type is the JSON literal true. + + + Specifies the data type of a JSON value. + + + A JSON array. + + + The JSON value false. + + + The JSON value null. + + + A JSON number. + + + A JSON object. + + + A JSON string. + + + The JSON value true. + + + There is no value (as distinct from ). + + + Allows the user to define custom behavior when writing JSON using the . + + + Gets or sets the encoder to use when escaping strings, or to use the default encoder. + The JavaScript character encoder used to override the escaping behavior. + + + Gets or sets a value that indicates whether the should format the JSON output, which includes indenting nested JSON tokens, adding new lines, and adding white space between property names and values. + + if the JSON output is formatted; if the JSON is written without any extra white space. The default is . + + + Gets or sets the maximum depth allowed when writing JSON, with the default (that is, 0) indicating a max depth of 1000. + Thrown when the max depth is set to a negative value. + + + Gets or sets a value that indicates whether the should skip structural validation and allow the user to write invalid JSON. + + if structural validation is skipped and invalid JSON is allowed; if an is thrown on any attempt to write invalid JSON. + + + Represents a mutable JSON array. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Initializes a new instance of the class that contains items from the specified array. + The items to add to the new . + + + Initializes a new instance of the class that contains items from the specified params array. + Options to control the behavior. + The items to add to the new . + + + Adds a to the end of the . + The to be added to the end of the . + + + Adds an object to the end of the . + The object to be added to the end of the . + The type of object to be added. + + + Removes all elements from the . + + + Determines whether an element is in the . + The object to locate in the . + + if is found in the ; otherwise, . + + + Initializes a new instance of the class that contains items from the specified . + The . + Options to control the behavior. + The is not a . + The new instance of the class that contains items from the specified . + + + Returns an enumerator that iterates through the . + An for the . + + + Returns an enumerable that wraps calls to . + The type of the value to obtain from the . + An enumerable iterating over values of the array. + + + The object to locate in the . + The to locate in the . + The index of item if found in the list; otherwise, -1. + + + Inserts an element into the at the specified index. + The zero-based index at which should be inserted. + The to insert. + + is less than 0 or is greater than . + + + Removes the first occurrence of a specific from the . + The to remove from the . + + if is successfully removed; otherwise, . + + + Removes the element at the specified index of the . + The zero-based index of the element to remove. + + is less than 0 or is greater than . + + + Copies the entire to a compatible one-dimensional array, starting at the specified index of the target array. + The one-dimensional that is the destination of the elements copied from . The Array must have zero-based indexing. + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Returns an enumerator that iterates through the . + A for the . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in the . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + The base class that represents a single node within a mutable JSON document. + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Casts to the derived type. + The node is not a . + A . + + + Creates a new instance of the class. All child nodes are recursively cloned. + A new cloned instance of the current node. + + + Compares the values of two nodes, including the values of all descendant nodes. + The to compare. + The to compare. + + if the tokens are equal; otherwise . + + + Returns the index of the current node from the parent . + The current parent is not a . + The index of the current node. + + + Gets the JSON path. + The JSON Path value. + + + Returns the property name of the current node from the parent object. + The current parent is not a . + The property name of the current node. + + + Gets the value for the current . + The type of the value to obtain from the . + The current cannot be represented as a {TValue}. + The current is not a or is not compatible with {TValue}. + A value converted from the instance. + + + Returns the of the current instance. + The json value kind of the current instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to an . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a specified nullable to a nullable . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an explicit conversion of a given to a . + A to explicitly convert. + A value converted from the instance. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a given to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a nullable . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Defines an implicit conversion of a specified nullable to a . + A to implicitly convert. + A instance converted from the parameter. + + + Parses a as UTF-8-encoded data representing a single JSON value into a . The Stream will be read to completion. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses text representing a single JSON value. + JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + + is . + + does not represent a valid single JSON value. + A representation of the JSON value. + + + Parses one JSON value (including objects or arrays) from the provided reader. + The reader to read. + Options to control the behavior. + + is using unsupported options. + The current token does not start or represent a value. + A value could not be read from the reader. + The from the reader. + + + Parses a as UTF-8 encoded data representing a single JSON value into a . The stream will be read to completion. + The JSON text to parse. + Options to control the node behavior after parsing. + Options to control the document behavior during parsing. + The token to monitor for cancellation requests. + + does not represent a valid single JSON value. + A to produce a representation of the JSON value. + + + Replaces this node with a new value. + The value that replaces this node. + The type of value to be replaced. + + + Converts the current instance to string in JSON format. + Options to control the serialization behavior. + JSON representation of current instance. + + + Gets a string representation for the current value appropriate to the node type. + A string representation for the current value appropriate to the node type. + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + The parameter is . + + + Gets or sets the element at the specified index. + The zero-based index of the element to get or set. + + is less than 0 or is greater than the number of properties. + The current is not a . + + + Gets or sets the element with the specified property name. + If the property is not found, is returned. + The name of the property to return. + + is . + The current is not a . + + + Gets the options to control the behavior. + + + Gets the parent . + If there is no parent, is returned. + A parent can either be a or a . + + + Gets the root . + + + Options to control behavior. + + + Gets or sets a value that indicates whether property names on are case insensitive. + + if property names are case insensitive; if property names are case sensitive. + + + Represents a mutable JSON object. + + + Initializes a new instance of the class that contains the specified . + The properties to be added. + Options to control the behavior. + + + Initializes a new instance of the class that is empty. + Options to control the behavior. + + + Adds the specified property to the . + The KeyValuePair structure representing the property name and value to add to the . + An element with the same property name already exists in the . + The property name of is . + + + Adds an element with the provided property name and value to the . + The property name of the element to add. + The value of the element to add. + + is . + An element with the same property name already exists in the . + + + Removes all elements from the . + + + Determines whether the contains an element with the specified property name. + The property name to locate in the . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Initializes a new instance of the class that contains properties from the specified . + The . + Options to control the behavior. + The new instance of the class that contains properties from the specified . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Removes the element with the specified property name from the . + The property name of the element to remove. + + is . + + if the element is successfully removed; otherwise, . + + + Determines whether the contains a specific property name and reference. + The element to locate in the . + + if the contains an element with the property name; otherwise, . + + + Copies the elements of the to an array of type KeyValuePair starting at the specified array index. + The one-dimensional Array that is the destination of the elements copied from . + The zero-based index in at which copying begins. + + is . + + is less than 0. + The number of elements in the source ICollection is greater than the available space from to the end of the destination . + + + Removes a key and value from the . + The KeyValuePair structure representing the property name and value to remove from the . + + if the element is successfully removed; otherwise, . + + + Gets the value associated with the specified property name. + The property name of the value to get. + When this method returns, contains the value associated with the specified property name, if the property name is found; otherwise, . + + is . + + if the contains an element with the specified property name; otherwise, . + + + Returns an enumerator that iterates through the . + An enumerator that iterates through the . + + + Returns the value of a property with the specified name. + The name of the property to return. + The JSON value of the property with the specified name. + + if a property with the specified name was found; otherwise, . + + + Writes the into the provided as JSON. + The . + Options to control the serialization behavior. + + + Gets the number of elements contained in . + The number of elements contained in the . + + + Returns . + + if the is read-only; otherwise, . + + + Gets a collection containing the property names in the . + An containing the keys of the object that implements . + + + Gets a collection containing the property values in the . + An containing the values in the object that implements . + + + Represents a mutable JSON value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The underlying value of the new instance. + Options to control the behavior. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Initializes a new instance of the class that contains the specified value. + The value to create. + The that will be used to serialize the value. + Options to control the behavior. + The type of value to create. + The new instance of the class that contains the specified value. + + + Tries to obtain the current JSON value and returns a value that indicates whether the operation succeeded. + When this method returns, contains the parsed value. + The type of value to obtain. + + if the value can be successfully obtained; otherwise, . + + + Specifies that the JSON type should have its method called after deserialization occurs. + + + The method that is called after deserialization. + + + Specifies that the type should have its method called before deserialization occurs. + + + The method that is called before deserialization. + + + Specifies that the type should have its method called after serialization occurs. + + + The method that is called after serialization. + + + Specifies that the type should have its method called before serialization occurs. + + + The method that is called before serialization. + + + Provides the base class for serialization attributes. + + + Creates a new instance of the . + + + When placed on a constructor, indicates that the constructor should be used to create instances of the type on deserialization. + + + Initializes a new instance of . + + + Converts an object or value to or from JSON. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + if the instance can convert the specified object type; otherwise, . + + + Gets the type being converted by the current converter instance. + + + Converts an object or value to or from JSON. + The type of object or value handled by the converter. + + + Initializes a new instance. + + + Determines whether the specified type can be converted. + The type to compare against. + + if the type can be converted; otherwise, . + + + Reads and converts the JSON to type . + The reader. + The type to convert. + An object that specifies serialization options to use. + The converted value. + + + Reads a dictionary key from a JSON property name. + The to read from. + The type to convert. + The options to use when reading the value. + The value that was converted. + + + Writes a specified value as JSON. + The writer to write to. + The value to convert to JSON. + An object that specifies serialization options to use. + + + Writes a dictionary key as a JSON property name. + The to write to. + The value to convert. The value of determines if the converter handles values. + The options to use when writing the value. + + + Gets a value that indicates whether should be passed to the converter on serialization, and whether should be passed on deserialization. + + + Gets the type being converted by the current converter instance. + + + When placed on a property or type, specifies the converter type to use. + + + Initializes a new instance of . + + + Initializes a new instance of with the specified converter type. + The type of the converter. + + + When overridden in a derived class and is , allows the derived class to create a in order to pass additional state. + The type of the converter. + The custom converter. + + + Gets the type of the , or if it was created without a type. + The type of the , or if it was created without a type. + + + Supports converting several types by using a factory pattern. + + + When overridden in a derived class, initializes a new instance of the class. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which is compatible with . + + + Gets the type being converted by the current converter instance. + + + When placed on a type declaration, indicates that the specified subtype should be opted into polymorphic serialization. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared based type. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + Initializes a new attribute with specified parameters. + A derived type that should be supported in polymorphic serialization of the declared base type. + The type discriminator identifier to be used for the serialization of the subtype. + + + A derived type that should be supported in polymorphic serialization of the declared base type. + + + The type discriminator identifier to be used for the serialization of the subtype. + + + When placed on a property of type , any properties that do not have a matching member are added to that dictionary during deserialization and written during serialization. + + + Initializes a new instance of the class. + + + Prevents a property from being serialized or deserialized. + + + Initializes a new instance of . + + + Gets or sets the condition that must be met before a property will be ignored. + + + Controls how the ignores properties on serialization and deserialization. + + + Property is always ignored. + + + Property is always serialized and deserialized, regardless of configuration. + + + Property is ignored only if it equals the default value for its type. + + + Property is ignored if its value is . This is applied only to reference-type properties and fields. + + + Indicates that the member should be included for serialization and deserialization. + The attribute is applied to a non-public property. + + + Initializes a new instance of . + + + The to be used at run time. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that the built-in policy be used to convert JSON property names. + + + Specifies that JSON property names should not be converted. + + + Converter to convert enums to and from numeric values. + The enum type that this converter targets. + + + Initializes a new instance of . + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Determines how handles numbers when serializing and deserializing. + + + The "NaN", "Infinity", and "-Infinity" tokens can be read as floating-point constants, and the and values for these constants will be written as their corresponding JSON string representations. + + + Numbers can be read from tokens. Does not prevent numbers from being read from token. + + + Numbers will only be read from tokens and will only be written as JSON numbers (without quotes). + + + Numbers will be written as JSON strings (with quotes), not as JSON numbers. + + + When placed on a type, property, or field, indicates what settings should be used when serializing or deserializing numbers. + + + Initializes a new instance of . + A bitwise combination of the enumeration values that specify how number types should be handled when serializing or deserializing. + + + Indicates what settings should be used when serializing or deserializing numbers. + An object that determines the number serialization and deserialization settings. + + + Determines how deserialization will handle object creation for fields or properties. + + + Attempt to populate any instances already found on a deserialized field or property. + + + A new instance will always be created when deserializing a field or property. + + + Determines how deserialization handles object creation for fields or properties. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the configuration to use when deserializing members. + + + When placed on a type, indicates that the type should be serialized polymorphically. + + + Creates a new instance. + + + Gets or sets a value that indicates whether the deserializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + + to instruct the deserializer to ignore any unrecognized type discriminator IDs and revert to the contract of the base type; to fail the deserialization for unrecognized type discriminator IDs. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + + + Specifies the property name that is present in the JSON when serializing and deserializing. This overrides any naming policy specified by . + + + Initializes a new instance of with the specified property name. + The name of the property. + + + Gets the name of the property. + The name of the property. + + + Specifies the property order that is present in the JSON when serializing. Lower values are serialized first. + If the attribute is not specified, the default value is 0. + + + Initializes a new instance of with the specified order. + The order of the property. + + + Gets the serialization order of the property. + The serialization order of the property. + + + Indicates that the annotated member must bind to a JSON property on deserialization. + + + Initializes a new instance of . + + + Instructs the System.Text.Json source generator to generate source code to help optimize performance when serializing and deserializing instances of the specified type and types in its object graph. + + + Initializes a new instance of with the specified type. + The type to generate source code for. + + + Gets or sets the mode that indicates what the source generator should generate for the type. If the value is , then the setting specified on will be used. + + + Gets or sets the name of the property for the generated for the type on the generated, derived type. + + + Provides metadata about a set of types that is relevant to JSON serialization. + + + Creates an instance of and binds it with the indicated . + The run time provided options for the context instance. + + + Gets metadata for the specified type. + The type to fetch metadata for. + The metadata for the specified type, or if the context has no metadata for the type. + + + Resolves a contract for the requested type and options. + The type to be resolved. + The configuration to use when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Gets the default run-time options for the context. + + + Gets the run-time specified options of the context. If no options were passed when instantiating the context, then a new instance is bound and returned. + + + The generation mode for the System.Text.Json source generator. + + + When specified on , indicates that both type-metadata initialization logic and optimized serialization logic should be generated for all types. When specified on , indicates that the setting on should be used. + + + Instructs the JSON source generator to generate type-metadata initialization logic. + + + Instructs the JSON source generator to generate optimized serialization logic. + + + Instructs the System.Text.Json source generator to assume the specified options will be used at run time via . + + + Initializes a new instance of . + + + Constructs a new instance with a predefined set of options determined by the specified . + The to reason about. + + is invalid. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default ignore condition. + + + Gets or sets the default value of . + + + Gets or sets the source generation mode for types that don't explicitly set the mode with . + + + Gets or sets a value that indicates whether to ignore read-only fields. + + + Gets or sets a value that indicates whether to ignore read-only properties. + + + Gets or sets a value that indicates whether to include fields for serialization and deserialization. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a built-in naming policy to convert JSON property names with. + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets the default value of . + + + Gets or sets a value that indicates whether the source generator defaults to instead of numeric serialization for all enum types encountered in its type graph. + + + Gets or sets a value that indicates whether JSON output is pretty-printed. + + + Converts enumeration values to and from strings. + + + Initializes an instance of the class with the default naming policy that allows integer values. + + + Initializes an instance of the class with a specified naming policy and a value that indicates whether undefined enumeration values are allowed. + The optional naming policy for writing enum values. + + to allow undefined enum values; otherwise, . When , if an enum value isn't defined, it will output as a number rather than a string. + + + Determines whether the specified type can be converted to an enum. + The type to be checked. + + true if the type can be converted; otherwise, false. + + + Creates a converter for the specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Converter to convert enums to and from strings. + The enum type that this converter targets. + + + Initializes a new instance of with the default naming policy and that allows integer values. + + + Initializes a new instance of . + Optional naming policy for writing enum values. + + to allow undefined enum values. When , if an enum value isn't defined, it outputs as a number rather than a string. + + + When overridden in a derived class, determines whether the converter instance can convert the specified object type. + The type of the object to check whether it can be converted by this converter instance. + + true if the instance can convert the specified object type; otherwise, false. + + + Creates a converter for a specified type. + The type handled by the converter. + The serialization options to use. + A converter for which T is compatible with typeToConvert. + + + Defines how objects of a derived runtime type that has not been explicitly declared for polymorphic serialization should be handled. + + + An object of undeclared runtime type will fail polymorphic serialization. + + + An object of undeclared runtime type will fall back to the serialization contract of the base type. + + + An object of undeclared runtime type will revert to the serialization contract of the nearest declared ancestor type. + Certain interface hierarchies are not supported due to diamond ambiguity constraints. + + + Defines how deserializing a type declared as an is handled during deserialization. + + + A type declared as is deserialized as a . + + + A type declared as is deserialized as a . + + + Determines how handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. + + + Throws an exception when an unmapped property is encountered. + + + Silently skips any unmapped properties. This is the default behavior. + + + When placed on a type, determines the configuration for the specific type, overriding the global setting. + + + Initializes a new instance of . + The handling to apply to the current member. + + + Gets the unmapped member handling setting for the attribute. + + + Defines the default, reflection-based JSON contract resolver used by System.Text.Json. + + + Creates a mutable instance. + + + Resolves a JSON contract for a given and configuration. + The type for which to resolve a JSON contract. + A instance used to determine contract configuration. + + or is . + A defining a reflection-derived JSON contract for . + + + Gets a list of user-defined callbacks that can be used to modify the initial contract. + + + Used to resolve the JSON serialization contract for requested types. + + + Resolves a contract for the requested type and options. + Type to be resolved. + Configuration used when resolving the metadata. + A instance matching the requested type, or if no contract could be resolved. + + + Provides serialization metadata about a collection type. + The collection type. + + + + A instance representing the element type. + + + If a dictionary type, the instance representing the key type. + + + The option to apply to number collection elements. + + + A to create an instance of the collection when deserializing. + + + An optimized serialization implementation assuming pre-determined defaults. + + + Represents a supported derived type defined in the metadata of a polymorphic type. + + + Initializes a new instance of the class that represents a supported derived type without a type discriminator. + The derived type to be supported by the polymorphic type metadata. + + + Initializes a new instance of the class that represents a supported derived type with an integer type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Initializes a new instance of the class that represents a supported derived type with a string type discriminator. + The derived type to be supported by the polymorphic type metadata. + The type discriminator to be associated with the derived type. + + + Gets a derived type that should be supported in polymorphic serialization of the declared base type. + + + Gets the type discriminator identifier to be used for the serialization of the subtype. + + + Provides helpers to create and initialize metadata for JSON-serializable types. + + + Creates serialization metadata for an array. + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The serialization and deserialization options to use. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates serialization metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for and types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for non-dictionary immutable collection types. + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method to create an immutable dictionary instance. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the key type. + The generic definition of the value type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a complex class or struct. + The to use for serialization and deserialization. + Provides serialization metadata about an object type with constructors, properties, and fields. + The type of the class or struct. + + or is . + A instance representing the class or struct. + + + Creates metadata for a property or field. + The to use for serialization and deserialization. + Provides serialization metadata about the property or field. + The type that the converter for the property returns or accepts when converting JSON data. + A instance initialized with the provided metadata. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates serialization metadata for . + The to use. + Provides serialization metadata about the collection type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + A method for adding elements to the collection when using the serializer's code-paths. + The generic definition of the type. + Serialization metadata for the given type. + + + Creates metadata for types assignable to . + The to use for serialization and deserialization. + Provides serialization metadata about the collection type. + The generic definition of the type. + The generic definition of the element type. + Serialization metadata for the given type. + + + Creates metadata for a primitive or a type with a custom converter. + The to use for serialization and deserialization. + + The generic type definition. + A instance representing the type. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the enum type. + A instance that converts values. + + + Creates a instance that converts values. + The to use for serialization and deserialization. + The generic definition for the underlying nullable type. + A instance that converts values + + + Creates a instance that converts values. + Serialization metadata for the underlying nullable type. + The generic definition for the underlying nullable type. + A instance that converts values + + + Gets a type converter that throws a . + The generic definition for the type. + A instance that throws + + + Gets an object that converts values. + + + Gets an object that converts byte array values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + An instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Returns a instance that converts values. + + + Gets a JSON converter that converts values. + + + Returns a instance that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Gets an object that converts values. + + + Provides serialization metadata about an object type with constructors, properties, and fields. + The object type to serialize or deserialize. + + + + Provides a mechanism to initialize metadata for a parameterized constructor of the class or struct to be used when deserializing. + + + Gets or sets an object that specifies how number properties and fields should be processed when serializing and deserializing. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterless constructor during deserialization. + + + Gets or sets a mechanism to create an instance of the class or struct using a parameterized constructor during deserialization. + + + Gets or sets a mechanism to initialize metadata for properties and fields of the class or struct. + + + Gets or sets a serialization implementation for instances of the class or struct that assumes options specified by . + + + Provides information about a constructor parameter required for JSON deserialization. + + + + Gets or sets the default value of the parameter. + + + Gets or sets a value that specifies whether a default value was specified for the parameter. + + + Gets or sets the name of the parameter. + + + Gets or sets the type of the parameter. + + + Gets or sets the zero-based position of the parameter in the formal parameter list. + + + Defines polymorphic configuration for a specified base type. + + + Creates an empty instance. + + + Gets the list of derived types supported in the current polymorphic type configuration. + + + Gets or sets a value that indicates whether the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type. + The parent instance has been locked for further modification. + + if the serializer should ignore any unrecognized type discriminator IDs and revert to the contract of the base type; if the deserialization should fail when an unrecognized type discriminator ID is encountered. + + + Gets or sets a custom type discriminator property name for the polymorhic type. + Uses the default '$type' property name if left unset. + The parent instance has been locked for further modification. + + + Gets or sets the behavior when serializing an undeclared derived runtime type. + The parent instance has been locked for further modification. + + + Provides JSON serialization-related metadata about a property or field. + + + Gets or sets the custom attribute provider for the current property. + The instance has been locked for further modification. + + + Gets or sets a custom converter override for the current property. + The instance has been locked for further modification. + + + Gets or sets a getter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a value that indicates whether the current property is a special extension data property. + The instance has been locked for further modification. + +-or- + +The current is not valid for use with extension data. + + + Gets or sets a value that indicates whether the current property is required for deserialization to be successful. + The instance has been locked for further modification. + + + Gets or sets the JSON property name used when serializing the property. + + is . + The instance has been locked for further modification. + + + Gets or sets the applied to the current property. + The instance has been locked for further modification. + + + Gets or sets a value indicating if the property or field should be replaced or populated during deserialization. + + + Gets the value associated with the current contract instance. + + + Gets or sets the serialization order for the current property. + The instance has been locked for further modification. + + + Gets the type of the current property. + + + Gets or sets a setter delegate for the property. + The instance has been locked for further modification. + + + Gets or sets a predicate that determines whether the current property value should be serialized. + The instance has been locked for further modification. + + + Provides serialization metadata about a property or field. + The type to convert of the for the property. + + + + A for the property or field, specified by . + + + The declaring type of the property or field. + + + Provides a mechanism to get the property or field's value. + + + Whether the property was annotated with . + + + Specifies a condition for the member to be ignored. + + + Whether the property was annotated with . + + + If , indicates that the member is a property, otherwise indicates the member is a field. + + + Whether the property or field is public. + + + Whether the property or field is a virtual property. + + + The name to be used when processing the property or field, specified by . + + + If the property or field is a number, specifies how it should processed when serializing and deserializing. + + + The name of the property or field. + + + The info for the property or field's type. + + + Provides a mechanism to set the property or field's value. + + + Provides JSON serialization-related metadata about a type. + + + Creates a blank instance for the current . + The declared type for the property. + The property name used in JSON serialization and deserialization. + + or is . + + cannot be used for serialization. + The instance has been locked for further modification. + A blank instance. + + + Creates a blank instance. + The type for which contract metadata is specified. + The instance the metadata is associated with. + + or is . + + cannot be used for serialization. + A blank instance. + + + Creates a blank instance. + The instance the metadata is associated with. + The type for which contract metadata is specified. + + is . + A blank instance. + + + Locks the current instance for further modification. + + + Gets the associated with the current type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Gets a value that indicates whether the current instance has been locked for modification. + + + Gets a value that describes the kind of contract metadata that the current instance specifies. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + An invalid value was specified. + + + Gets or sets a callback to be invoked after deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before deserialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked after serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets or sets a callback to be invoked before serialization occurs. + The instance has been locked for further modification. + +-or- + +Serialization callbacks are only supported for metadata. + + + Gets the value associated with the current instance. + + + Gets or sets the from which this metadata instance originated. + The instance has been locked for further modification. + + + Gets or sets a configuration object specifying polymorphism metadata. + + has been associated with a different instance. + The instance has been locked for further modification. + +-or- + +Polymorphic serialization is not supported for the current metadata . + + + Gets or sets the preferred value for properties contained in the type. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for JsonTypeInfoKind.Object. + Specified an invalid value. + + + Gets the list of metadata corresponding to the current type. + + + Gets the for which the JSON serialization contract is being defined. + + + Gets or sets the type-level override. + The instance has been locked for further modification. + +-or- + +Unmapped member handling is only supported for . + An invalid value was specified. + + + Provides JSON serialization-related metadata about a type. + The generic definition of the type. + + + Gets or sets a parameterless factory to be used on deserialization. + The instance has been locked for further modification. + +-or- + +A parameterless factory is not supported for the current metadata . + + + Serializes an instance of using values specified at design time. + + + Describes the kind of contract metadata a specifies. + + + Type is serialized as a dictionary with key/value pair entries. + + + Type is serialized as a collection with elements. + + + Type is either a simple value or uses a custom converter. + + + Type is serialized as an object with properties. + + + Contains utilities and combinators acting on . + + + Combines multiple sources into one. + Sequence of contract resolvers to be queried for metadata. + + is . + A combining results from . + + + Creates a resolver and applies modifications to the metadata generated by the source . + The source resolver generating metadata. + The delegate that modifies non- results. + A new instance with modifications applied. + + + Defines how the deals with references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Returns the used for each serialization call. + The resolver to use for serialization and deserialization. + + + Gets an object that indicates whether an object is ignored when a reference cycle is detected during serialization. + + + Gets an object that indicates whether metadata properties are honored when JSON objects and arrays are deserialized into reference types, and written when reference types are serialized. This is necessary to create round-trippable JSON from objects that contain cycles or duplicate references. + + + Defines how the deals with references on serialization and deserialization. + The type of the to create on each serialization or deserialization call. + + + Initializes a new instance of the generic class that can create a instance of the specified type. + + + Creates a new of type used for each serialization call. + The new resolver to use for serialization and deserialization. + + + Defines how the deals with references on serialization and deserialization. + Defines the core behavior of preserving references on serialization and deserialization. + + + Initializes a new instance of the class. + + + Adds an entry to the bag of references using the specified id and value. + This method gets called when an $id metadata property from a JSON object is read. + The identifier of the JSON object or array. + The value of the CLR reference type object that results from parsing the JSON object. + + + Gets the reference identifier of the specified value if exists; otherwise a new id is assigned. + This method gets called before a CLR object is written so we can decide whether to write $id and enumerate the rest of its properties or $ref and step into the next object. + The value of the CLR reference type object to get an id for. + When this method returns, if a reference to value already exists; otherwise, . + The reference id for the specified object. + + + Returns the CLR reference type object related to the specified reference id. + This method gets called when $ref metadata property is read. + The reference id related to the returned object. + The reference type object related to the specified reference id. + + + Provides a high-performance API for forward-only, read-only access to UTF-8 encoded JSON text. + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only sequence of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text and indicates whether the input contains all the text to process. + The UTF-8 encoded JSON text to process. + + to indicate that the input sequence contains the entire data to process; to indicate that the input span contains partial data with more data to follow. + The reader state. If this is the first call to the constructor, pass the default state; otherwise, pass the value of the property from the previous instance of the . + + + Initializes a new instance of the structure that processes a read-only span of UTF-8 encoded text using the specified options. + The UTF-8 encoded JSON text to process. + Options that define customized behavior of the that differs from the JSON RFC (for example, how to handle comments or maximum depth allowed when reading). By default, the follows the JSON RFC strictly; comments within the JSON are invalid, and the maximum depth is 64. + + + Copies the current JSON token value from the source, unescaped, as UTF-8 bytes to a buffer. + A buffer to write the unescaped UTF-8 bytes into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of bytes written to . + + + Copies the current JSON token value from the source, unescaped, as UTF-16 characters to a buffer. + A buffer to write the transcoded UTF-16 characters into. + The JSON token is not a string, that is, it's not or . + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The destination buffer is too small to hold the unescaped value. + The number of characters written to . + + + Reads the next JSON token value from the source as a . + The value of the JSON token isn't a Boolean value (that is, or ). + + if the is ; if the is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Byte.MinValue or greater than Byte.MaxValue. + The value of the UTF-8 encoded token. + + + Parses the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array. + The type of the JSON token is not a . + The value is not encoded as Base64 text, so it can't be decoded to bytes. + +-or- + +The value contains invalid or more than two padding characters. + +-or- + +The value is incomplete. That is, the JSON string length is not a multiple of 4. + The byte array that represents the current JSON token value. + + + Parses the current JSON token value from the source as a comment and transcodes it as a . + The JSON token is not a comment. + The comment that represents the current JSON token value. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value cannot be read as a . + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + +-or- + +The JSON token value is of an unsupported format. + The date and time offset, if the entire UTF-8 encoded token value can be successfully parsed. + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Decimal.MinValue or greater than Decimal.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Double.MinValue or greater than Double.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The value of the JSON token isn't a . + The JSON token value is in an unsupported format for a Guid. + +-or- + +The entire UTF-8 encoded token value cannot be parsed to a value. + The GUID value, if the entire UTF-8 encoded token value can be successfully parsed. + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than Int16.MinValue or greater than Int16.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int32.MinValue or greater than Int32.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to an . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than Int64.MinValue or greater than Int64.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Parses the current JSON token value from the source as an . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than SByte.MinValue or greater than SByte.MaxValue. + The UTF-8 encoded token value parsed to an . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value represents a number less than Single.MinValue or greater than Single.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source unescaped and transcodes it as a string. + The JSON token value isn't a string (that is, not a , , or ). + +-or- + +The JSON string contains invalid UTF-8 bytes or invalid UTF-16 surrogates. + The token value parsed to a string, or if is . + + + Parses the current JSON token value from the source as a . + The value of the JSON token is not a . + The numeric format of the JSON token value is incorrect (for example, it contains a fractional value or is written in scientific notation). + +-or- + +The JSON token value represents a number less than UInt16.MinValue or greater than UInt16.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt32.MinValue or greater than UInt32.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token value from the source and parses it to a . + The JSON token value isn't a . + The JSON token value is of the incorrect numeric format. For example, it contains a decimal or is written in scientific notation. + +-or- + +The JSON token value represents a number less than UInt64.MinValue or greater than UInt64.MaxValue. + The UTF-8 encoded token value parsed to a . + + + Reads the next JSON token from the input source. + An invalid JSON token according to the JSON RFC is encountered. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + if the token was read successfully; otherwise, . + + + Skips the children of the current JSON token. + The reader was given partial data with more data to follow (that is, is ). + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or- + +The current depth exceeds the recursive limit set by the maximum depth. + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source and decodes the Base64 encoded JSON string as a byte array and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decoded binary representation of the Base64 text. + The JSON token is not a . + + if the entire token value is encoded as valid Base64 text and can be successfully decoded to bytes; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the date and time value equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the decimal equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains a double-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the GUID equivalent to the current JSON string if the conversion succeeded, or if the conversion failed. + The value of the JSON token isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as an and returns a value that indicates whether the operation succeeded. + When this method returns, contains the signed byte equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the single-precision floating point value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to an value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains the unsigned 16-bit integer value equivalent of the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 32-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to parse the current JSON token value from the source as a and returns a value that indicates whether the operation succeeded. + When this method returns, contains unsigned 64-bit integer value equivalent to the current JSON number if the conversion succeeded, or 0 if the conversion failed. + The JSON token value isn't a . + + if the entire UTF-8 encoded token value can be successfully parsed to a value; otherwise, . + + + Tries to skip the children of the current JSON token. + An invalid JSON token was encountered while skipping, according to the JSON RFC. + +-or - + +The current depth exceeds the recursive limit set by the maximum depth. + + if there was enough data for the children to be skipped successfully; otherwise, . + + + Compares the UTF-8 encoded text in a read-only byte span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The UTF-8 encoded text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the UTF-8 encoded lookup text; otherwise, . + + + Compares the text in a read-only character span to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Compares the string text to the unescaped JSON token value in the source and returns a value that indicates whether they match. + The text to compare against. + The JSON token is not a JSON string (that is, it is not or ). + + if the JSON token value in the source matches the lookup text; otherwise, . + + + Gets the total number of bytes consumed so far by this instance of the . + The total number of bytes consumed so far. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the current state to pass to a constructor with more data. + The current reader state. + + + Gets a value that indicates which Value property to use to get the token value. + + if should be used to get the token value; if should be used instead. + + + Gets a value that indicates whether all the JSON data was provided or there is more data to come. + + if the reader was constructed with the input span or sequence containing the entire JSON data to process; if the reader was constructed with an input span or sequence that may contain partial JSON data with more data to follow. + + + Gets the current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + The current within the provided UTF-8 encoded input ReadOnlySequence<byte> or a default if the struct was constructed with a ReadOnlySpan<byte>. + + + Gets the index that the last processed JSON token starts at (within the given UTF-8 encoded input text), skipping any white space. + The starting index of the last processed JSON token within the given UTF-8 encoded input text. + + + Gets the type of the last processed JSON token in the UTF-8 encoded JSON text. + The type of the last processed JSON token. + + + Gets a value that indicates whether the current or properties contain escape sequences per RFC 8259 section 7, and therefore require unescaping before being consumed. + + + Gets the raw value of the last processed token as a ReadOnlySequence<byte> slice of the input payload, only if the token is contained within multiple segments. + A byte read-only sequence. + + + Gets the raw value of the last processed token as a ReadOnlySpan<byte> slice of the input payload, if the token fits in a single segment or if the reader was constructed with a JSON payload contained in a ReadOnlySpan<byte>. + A read-only span of bytes. + + + Provides a high-performance API for forward-only, non-cached writing of UTF-8 encoded JSON text. + + + Initializes a new instance of the class using the specified to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Initializes a new instance of the class using the specified stream to write the output to and customization options. + The destination for writing JSON text. + Defines the customized behavior of the . By default, it writes minimized JSON (with no extra white space) and validates that the JSON being written is structurally valid according to the JSON RFC. + + is . + + + Commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + + + Asynchronously commits any leftover JSON text that has not yet been flushed and releases all resources used by the current instance. + A task representing the asynchronous dispose operation. + + + Commits the JSON text written so far, which makes it visible to the output destination. + This instance has been disposed. + + + Asynchronously commits the JSON text written so far, which makes it visible to the output destination. + The token to monitor for cancellation requests. The default value is . + This instance has been disposed. + A task representing the asynchronous flush operation. + + + Resets the internal state of this instance so that it can be reused. + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Resets the internal state of this instance so that it can be reused with a new instance of . + The destination for writing JSON text. + + is . + This instance has been disposed. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The binary data to write as Base64 encoded text. + The specified property name or value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and raw bytes value (as a Base64 encoded JSON string) as part of a name/value pair of a JSON object. + The JSON-encoded name of the property to write. + The binary data to write as Base64 encoded text. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the raw bytes value as a Base64 encoded JSON string as an element of a JSON array. + The binary data to be written as a Base64 encoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the operation would result in writing invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON literal true or false) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON literal true or false as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON literal true or false) as an element of a JSON array. + The value to be written as a JSON literal true or false as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value as a JSON comment. + The UTF-8 encoded value to be written as a JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a UTF-16 text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + + + Writes a string text value as a JSON comment. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON comment within /*..*/. + The specified value is too large. + +-or- + + contains a comment delimiter (that is, */). + The parameter is . + + + Writes the end of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the end of a JSON object. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and the JSON literal null as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and the JSON literal null as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the JSON literal null as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only span of bytes and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and an value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON number) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON number) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON number as part of the name/value pair. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes an value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON number) as an element of a JSON array. + The value to be written as a JSON number as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the UTF-8 property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + Validation is enabled, and this write operation would produce invalid JSON. + + is . + + + Writes the pre-encoded property name (as a JSON string) as the first part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; to skip validation. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input + is not a valid, complete, single JSON value according to the JSON RFC + or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or equal to Int32.MaxValue. + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the input as JSON content. It is expected that the input content is a single complete JSON value. + The raw JSON content to write. + + to validate if the input is an RFC 8259-compliant JSON payload; otherwise. + + is . + The length of the input is zero or greater than 715,827,882 (Int32.MaxValue / 3). + + is , and the input is not a valid, complete, single JSON value according to the JSON RFC, or the input JSON exceeds a recursive depth of 64. + + + Writes the beginning of a JSON array. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON array to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON array with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON array to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON array with a pre-encoded property name as the key. + The JSON encoded property name of the JSON array to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes the beginning of a JSON object. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only span of bytes as the key. + The UTF-8 encoded property name of the JSON object to be written. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a read-only character span as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + + + Writes the beginning of a JSON object with a property name specified as a string as the key. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The specified property name is too large. + The depth of the JSON exceeds the maximum depth of 1,000. + +-or- + +Validation is enabled, and this write operation would produce invalid JSON. + The parameter is . + + + Writes the beginning of a JSON object with a pre-encoded property name as the key. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The depth of the JSON has exceeded the maximum depth of 1,000. + +-or- + +Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-8 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the UTF-8 property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-8 encoded property name of the JSON object to be written. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and this method would result in writing invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a read-only character span and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a UTF-16 text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes a property name specified as a string and a string text value (as a JSON string) as part of a name/value pair of a JSON object. + The UTF-16 encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name or value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified property name is too large. + Validation is enabled, and the write operation would produce invalid JSON. + The parameter is . + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and UTF-8 text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The UTF-8 encoded value to be written as a JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and string text value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded property name and pre-encoded value (as a JSON string) as part of a name/value pair of a JSON object. + The JSON encoded property name of the JSON object to be transcoded and written as UTF-8. + The JSON encoded value to be written as a UTF-8 transcoded JSON string as part of the name/value pair. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a value (as a JSON string) as an element of a JSON array. + The value to be written as a JSON string as an element of a JSON array. + Validation is enabled, and the operation would result in writing invalid JSON. + + + Writes a UTF-8 text value (as a JSON string) as an element of a JSON array. + The UTF-8 encoded value to be written as a JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a UTF-16 text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes a string text value (as a JSON string) as an element of a JSON array. + The UTF-16 encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + The specified value is too large. + Validation is enabled, and the write operation would produce invalid JSON. + + + Writes the pre-encoded text value (as a JSON string) as an element of a JSON array. + The JSON encoded value to be written as a UTF-8 transcoded JSON string element of a JSON array. + Validation is enabled, and the write operation would produce invalid JSON. + + + Gets the total number of bytes committed to the output by the current instance so far. + The total number of bytes committed to the output by the so far. + + + Gets the number of bytes written by the so far that have not yet been flushed to the output and committed. + The number of bytes written so far by the that have not yet been flushed to the output and committed. + + + Gets the depth of the current token. + The depth of the current token. + + + Gets the custom behavior when writing JSON using this instance, which indicates whether to format the output while writing, whether to skip structural JSON validation, and which characters to escape. + The custom behavior of this instance of the writer for formatting, validating, and escaping. + + + \ No newline at end of file diff --git a/packages/System.Text.Json.8.0.0/useSharedDesignerContext.txt b/packages/System.Text.Json.8.0.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Channels.8.0.0/.signature.p7s b/packages/System.Threading.Channels.8.0.0/.signature.p7s new file mode 100644 index 0000000..d0a2036 Binary files /dev/null and b/packages/System.Threading.Channels.8.0.0/.signature.p7s differ diff --git a/packages/System.Threading.Channels.8.0.0/Icon.png b/packages/System.Threading.Channels.8.0.0/Icon.png new file mode 100644 index 0000000..a0f1fdb Binary files /dev/null and b/packages/System.Threading.Channels.8.0.0/Icon.png differ diff --git a/packages/System.Threading.Channels.8.0.0/LICENSE.TXT b/packages/System.Threading.Channels.8.0.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Threading.Channels.8.0.0/PACKAGE.md b/packages/System.Threading.Channels.8.0.0/PACKAGE.md new file mode 100644 index 0000000..f022aaf --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/PACKAGE.md @@ -0,0 +1,73 @@ +## About + + + +The `System.Threading.Channels` library provides types for passing data asynchronously between producers and consumers. + +## Key Features + + + +* Abstractions representing channels for one or more producers to publish data to one or more consumers +* APIs focused on asynchronous production and consumption of data +* Factory methods for producing multiple kinds of channels + +## How to Use + + + +```C# +using System; +using System.Threading.Channels; +using System.Threading.Tasks; + +Channel channel = Channel.CreateUnbounded(); + +Task producer = Task.Run(async () => +{ + int i = 0; + while (true) + { + channel.Writer.TryWrite(i++); + await Task.Delay(TimeSpan.FromSeconds(1)); + } +}); + +Task consumer = Task.Run(async () => +{ + await foreach (int value in channel.Reader.ReadAllAsync()) + { + Console.WriteLine(value); + } +}); + +await Task.WhenAll(producer, consumer); +``` + +## Main Types + + + +The main types provided by this library are: + +* `System.Threading.Channel` +* `System.Threading.Channel` + +## Additional Documentation + + + +* [Overview](https://devblogs.microsoft.com/dotnet/an-introduction-to-system-threading-channels/) +* [API documentation](https://learn.microsoft.com/dotnet/api/system.threading.channels) + +## Related Packages + + + +https://www.nuget.org/packages/System.Threading.Tasks.Dataflow/ + +## Feedback & Contributing + + + +System.Threading.Channels is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime). \ No newline at end of file diff --git a/packages/System.Threading.Channels.8.0.0/System.Threading.Channels.8.0.0.nupkg b/packages/System.Threading.Channels.8.0.0/System.Threading.Channels.8.0.0.nupkg new file mode 100644 index 0000000..e61d32b Binary files /dev/null and b/packages/System.Threading.Channels.8.0.0/System.Threading.Channels.8.0.0.nupkg differ diff --git a/packages/System.Threading.Channels.8.0.0/THIRD-PARTY-NOTICES.TXT b/packages/System.Threading.Channels.8.0.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..4b40333 --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,1272 @@ +.NET Runtime uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Runtime software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for ASP.NET +------------------------------- + +Copyright (c) .NET Foundation. All rights reserved. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/dotnet/aspnetcore/blob/main/LICENSE.txt + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +https://www.unicode.org/license.html + +Copyright © 1991-2022 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in https://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +https://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.13, October 13th, 2022 + + Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + +License notice for Json.NET +------------------------------- + +https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md + +The MIT License (MIT) + +Copyright (c) 2007 James Newton-King + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR +COPYRIGHT HOLDERS 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. + +License notice for vectorized base64 encoding / decoding +-------------------------------------------------------- + +Copyright (c) 2005-2007, Nick Galbreath +Copyright (c) 2013-2017, Alfred Klomp +Copyright (c) 2015-2017, Wojciech Mula +Copyright (c) 2016-2017, Matthieu Darbois +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for vectorized hex parsing +-------------------------------------------------------- + +Copyright (c) 2022, Geoff Langdale +Copyright (c) 2022, Wojciech Mula +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +- Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for RFC 3492 +--------------------------- + +The punycode implementation is based on the sample code in RFC 3492 + +Copyright (C) The Internet Society (2003). All Rights Reserved. + +This document and translations of it may be copied and furnished to +others, and derivative works that comment on or otherwise explain it +or assist in its implementation may be prepared, copied, published +and distributed, in whole or in part, without restriction of any +kind, provided that the above copyright notice and this paragraph are +included on all such copies and derivative works. However, this +document itself may not be modified in any way, such as by removing +the copyright notice or references to the Internet Society or other +Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for +copyrights defined in the Internet Standards process must be +followed, or as required to translate it into languages other than +English. + +The limited permissions granted above are perpetual and will not be +revoked by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an +"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING +TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING +BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION +HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF +MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Copyright(C) The Internet Society 1997. All Rights Reserved. + +This document and translations of it may be copied and furnished to others, +and derivative works that comment on or otherwise explain it or assist in +its implementation may be prepared, copied, published and distributed, in +whole or in part, without restriction of any kind, provided that the above +copyright notice and this paragraph are included on all such copies and +derivative works.However, this document itself may not be modified in any +way, such as by removing the copyright notice or references to the Internet +Society or other Internet organizations, except as needed for the purpose of +developing Internet standards in which case the procedures for copyrights +defined in the Internet Standards process must be followed, or as required +to translate it into languages other than English. + +The limited permissions granted above are perpetual and will not be revoked +by the Internet Society or its successors or assigns. + +This document and the information contained herein is provided on an "AS IS" +basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE +DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO +ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY +RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A +PARTICULAR PURPOSE. + +License notice for Algorithm from RFC 4122 - +A Universally Unique IDentifier (UUID) URN Namespace +---------------------------------------------------- + +Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc. +Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. & +Digital Equipment Corporation, Maynard, Mass. +Copyright (c) 1998 Microsoft. +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: permission to use, copy, +modify, and distribute this file for any purpose is hereby +granted without fee, provided that the above copyright notices and +this notice appears in all source code copies, and that none of +the names of Open Software Foundation, Inc., Hewlett-Packard +Company, Microsoft, or Digital Equipment Corporation be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Neither Open Software +Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital +Equipment Corporation makes any representations about the +suitability of this software for any purpose." + +License notice for The LLVM Compiler Infrastructure (Legacy License) +-------------------------------------------------------------------- + +Developed by: + + LLVM Team + + University of Illinois at Urbana-Champaign + + http://llvm.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal with +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimers. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimers in the + documentation and/or other materials provided with the distribution. + + * Neither the names of the LLVM Team, University of Illinois at + Urbana-Champaign, nor the names of its contributors may be used to + endorse or promote products derived from this Software without specific + prior written permission. + +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 +CONTRIBUTORS OR COPYRIGHT HOLDERS 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 WITH THE +SOFTWARE. + +License notice for Bob Jenkins +------------------------------ + +By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this +code any way you wish, private, educational, or commercial. It's free. + +License notice for Greg Parker +------------------------------ + +Greg Parker gparker@cs.stanford.edu December 2000 +This code is in the public domain and may be copied or modified without +permission. + +License notice for libunwind based code +---------------------------------------- + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for Printing Floating-Point Numbers (Dragon4) +------------------------------------------------------------ + +/****************************************************************************** + Copyright (c) 2014 Ryan Juckett + http://www.ryanjuckett.com/ + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source + distribution. +******************************************************************************/ + +License notice for Printing Floating-point Numbers (Grisu3) +----------------------------------------------------------- + +Copyright 2012 the V8 project authors. All rights reserved. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google Inc. nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xxHash +------------------------- + +xxHash - Extremely Fast Hash algorithm +Header File +Copyright (C) 2012-2021 Yann Collet + +BSD 2-Clause License (https://www.opensource.org/licenses/bsd-license.php) + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +You can contact the author at: + - xxHash homepage: https://www.xxhash.com + - xxHash source repository: https://github.com/Cyan4973/xxHash + +License notice for Berkeley SoftFloat Release 3e +------------------------------------------------ + +https://github.com/ucb-bar/berkeley-softfloat-3 +https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt + +License for Berkeley SoftFloat Release 3e + +John R. Hauser +2018 January 20 + +The following applies to the whole of SoftFloat Release 3e as well as to +each source file individually. + +Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the +University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions, and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions, and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE +DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for xoshiro RNGs +-------------------------------- + +Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org) + +To the extent possible under law, the author has dedicated all copyright +and related and neighboring rights to this software to the public domain +worldwide. This software is distributed without any warranty. + +See . + +License for fastmod (https://github.com/lemire/fastmod), ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data) and fastrange (https://github.com/lemire/fastrange) +-------------------------------------- + + Copyright 2018 Daniel Lemire + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +License for sse4-strstr (https://github.com/WojciechMula/sse4-strstr) +-------------------------------------- + + Copyright (c) 2008-2016, Wojciech Mula + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for The C++ REST SDK +----------------------------------- + +C++ REST SDK + +The MIT License (MIT) + +Copyright (c) Microsoft Corporation + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for MessagePack-CSharp +------------------------------------- + +MessagePack for C# + +MIT License + +Copyright (c) 2017 Yoshifumi Kawai + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for lz4net +------------------------------------- + +lz4net + +Copyright (c) 2013-2017, Milosz Krajewski + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Nerdbank.Streams +----------------------------------- + +The MIT License (MIT) + +Copyright (c) Andrew Arnott + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for RapidJSON +---------------------------- + +Tencent is pleased to support the open source community by making RapidJSON available. + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. + +Licensed under the MIT License (the "License"); you may not use this file except +in compliance with the License. You may obtain a copy of the License at + +http://opensource.org/licenses/MIT + +Unless required by applicable law or agreed to in writing, software distributed +under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR +CONDITIONS OF ANY KIND, either express or implied. See the License for the +specific language governing permissions and limitations under the License. + +License notice for DirectX Math Library +--------------------------------------- + +https://github.com/microsoft/DirectXMath/blob/master/LICENSE + + The MIT License (MIT) + +Copyright (c) 2011-2020 Microsoft Corp + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, +merge, publish, distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be included in all copies +or substantial portions of the Software. + +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 OR COPYRIGHT +HOLDERS 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. + +License notice for ldap4net +--------------------------- + +The MIT License (MIT) + +Copyright (c) 2018 Alexander Chermyanin + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for vectorized sorting code +------------------------------------------ + +MIT License + +Copyright (c) 2020 Dan Shechter + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for musl +----------------------- + +musl as a whole is licensed under the following standard MIT license: + +Copyright © 2005-2020 Rich Felker, et al. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + + +License notice for "Faster Unsigned Division by Constants" +------------------------------ + +Reference implementations of computing and using the "magic number" approach to dividing +by constants, including codegen instructions. The unsigned division incorporates the +"round down" optimization per ridiculous_fish. + +This is free and unencumbered software. Any copyright is dedicated to the Public Domain. + + +License notice for mimalloc +----------------------------------- + +MIT License + +Copyright (c) 2019 Microsoft Corporation, Daan Leijen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for The LLVM Project +----------------------------------- + +Copyright 2019 LLVM Project + +Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions; +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +https://llvm.org/LICENSE.txt + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. + +License notice for Apple header files +------------------------------------- + +Copyright (c) 1980, 1986, 1993 + The Regents of the University of California. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. +4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +License notice for JavaScript queues +------------------------------------- + +CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER. + +Statement of Purpose +The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work"). +Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others. +For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following: +the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work; +moral rights retained by the original author(s) and/or performer(s); +publicity and privacy rights pertaining to a person's image or likeness depicted in a Work; +rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below; +rights protecting the extraction, dissemination, use and reuse of data in a Work; +database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and +other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof. +2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose. +3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose. +4. Limitations and Disclaimers. +a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document. +b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law. +c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work. +d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work. + + +License notice for FastFloat algorithm +------------------------------------- +MIT License +Copyright (c) 2021 csFastFloat authors +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License notice for MsQuic +-------------------------------------- + +Copyright (c) Microsoft Corporation. +Licensed under the MIT License. + +Available at +https://github.com/microsoft/msquic/blob/main/LICENSE + +License notice for m-ou-se/floatconv +------------------------------- + +Copyright (c) 2020 Mara Bos +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for code from The Practice of Programming +------------------------------- + +Copyright (C) 1999 Lucent Technologies + +Excerpted from 'The Practice of Programming +by Brian W. Kernighan and Rob Pike + +You may use this code for any purpose, as long as you leave the copyright notice and book citation attached. + +Notice for Euclidean Affine Functions and Applications to Calendar +Algorithms +------------------------------- + +Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar +Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf + +License notice for amd/aocl-libm-ose +------------------------------- + +Copyright (C) 2008-2020 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +3. Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +License notice for fmtlib/fmt +------------------------------- + +Formatting library for C++ + +Copyright (c) 2012 - present, Victor Zverovich + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. +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 OR COPYRIGHT HOLDERS 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. + +License for Jb Evain +--------------------- + +Copyright (c) 2006 Jb Evain (jbevain@gmail.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +--- Optional exception to the license --- + +As an exception, if, as a result of your compiling your source code, portions +of this Software are embedded into a machine-executable object form of such +source code, you may redistribute such embedded portions in such object form +without including the above copyright and permission notices. + + +License for MurmurHash3 +-------------------------------------- + +https://github.com/aappleby/smhasher/blob/master/src/MurmurHash3.cpp + +MurmurHash3 was written by Austin Appleby, and is placed in the public +domain. The author hereby disclaims copyright to this source + +License for Fast CRC Computation +-------------------------------------- + +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc32_ieee_by4.asm +https://github.com/intel/isa-l/blob/33a2d9484595c2d6516c920ce39a694c144ddf69/crc/crc64_ecma_norm_by8.asm + +Copyright(c) 2011-2015 Intel Corporation All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + * Neither the name of Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License for C# Implementation of Fast CRC Computation +----------------------------------------------------- + +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/src/ImageSharp/Formats/Png/Zlib/Crc32.cs + +Copyright (c) Six Labors. +Licensed under the Apache License, Version 2.0. + +Available at +https://github.com/SixLabors/ImageSharp/blob/f4f689ce67ecbcc35cebddba5aacb603e6d1068a/LICENSE diff --git a/packages/System.Threading.Channels.8.0.0/buildTransitive/net461/System.Threading.Channels.targets b/packages/System.Threading.Channels.8.0.0/buildTransitive/net461/System.Threading.Channels.targets new file mode 100644 index 0000000..d44f701 --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/buildTransitive/net461/System.Threading.Channels.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Threading.Channels.8.0.0/buildTransitive/net462/_._ b/packages/System.Threading.Channels.8.0.0/buildTransitive/net462/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Channels.8.0.0/buildTransitive/net6.0/_._ b/packages/System.Threading.Channels.8.0.0/buildTransitive/net6.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Channels.8.0.0/buildTransitive/netcoreapp2.0/System.Threading.Channels.targets b/packages/System.Threading.Channels.8.0.0/buildTransitive/netcoreapp2.0/System.Threading.Channels.targets new file mode 100644 index 0000000..0010c2a --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/buildTransitive/netcoreapp2.0/System.Threading.Channels.targets @@ -0,0 +1,6 @@ + + + + + diff --git a/packages/System.Threading.Channels.8.0.0/lib/net462/System.Threading.Channels.dll b/packages/System.Threading.Channels.8.0.0/lib/net462/System.Threading.Channels.dll new file mode 100644 index 0000000..fee8f5a Binary files /dev/null and b/packages/System.Threading.Channels.8.0.0/lib/net462/System.Threading.Channels.dll differ diff --git a/packages/System.Threading.Channels.8.0.0/lib/net462/System.Threading.Channels.xml b/packages/System.Threading.Channels.8.0.0/lib/net462/System.Threading.Channels.xml new file mode 100644 index 0000000..20275dc --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/lib/net462/System.Threading.Channels.xml @@ -0,0 +1,243 @@ + + + + System.Threading.Channels + + + + Specifies the behavior to use when writing to a bounded channel that is already full. + + + Removes and ignores the newest item in the channel in order to make room for the item being written. + + + Removes and ignores the oldest item in the channel in order to make room for the item being written. + + + Drops the item being written. + + + Waits for space to be available in order to complete the write operation. + + + Provides options that control the behavior of bounded instances. + + + Initializes the options. + The maximum number of items the bounded channel may store. + + + Gets or sets the maximum number of items the bounded channel may store. + + + Gets or sets the behavior incurred by write operations when the channel is full. + + + Provides static methods for creating channels. + + + Creates a channel with the specified maximum capacity. + The maximum number of items the channel may store. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel with the specified maximum capacity. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel subject to the provided options. + Options that guide the behavior of the channel. + Delegate that will be called when item is being dropped from channel. See . + Specifies the type of data in the channel. + The created channel. + + + Creates an unbounded channel usable by any number of readers and writers concurrently. + The type of data in the channel. + The created channel. + + + Creates an unbounded channel subject to the provided options. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Provides a base class for channels that support reading and writing elements of type . + Specifies the type of data readable and writable in the channel. + + + Initializes an instance of the class. + + + Provides a base class for channels that support reading elements of type and writing elements of type . + Specifies the type of data that may be written to the channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Implicit cast from a to its readable half. + The being cast. + The readable half. + + + Implicit cast from a to its writable half. + The being cast. + The writable half. + + + Gets the readable half of this channel. + + + Gets the writable half of this channel. + + + Exception thrown when a channel is used after it's been closed. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The exception that is the cause of this exception. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data. + The contextual information about the source or destination. + + + Initializes a new instance of the class. + The message that describes the error. + + + Initializes a new instance of the class. + The message that describes the error. + The exception that is the cause of this exception. + + + Provides options that control the behavior of channel instances. + + + Initializes an instance of the class. + + + + if operations performed on a channel may synchronously invoke continuations subscribed to + notifications of pending async operations; if all continuations should be invoked asynchronously. + + + + readers from the channel guarantee that there will only ever be at most one read operation at a time; + if no such constraint is guaranteed. + + + + if writers to the channel guarantee that there will only ever be at most one write operation + at a time; if no such constraint is guaranteed. + + + Provides a base class for reading from a channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Creates an that enables reading all of the data from the channel. + The cancellation token to use to cancel the enumeration. If data is immediately ready for reading, then that data may be yielded even after cancellation has been requested. + The created async enumerable. + + + Asynchronously reads an item from the channel. + A used to cancel the read operation. + A that represents the asynchronous read operation. + + + Attempts to peek at an item from the channel. + The peeked item, or a default value if no item could be peeked. + + if an item was read; otherwise, . + + + Attempts to read an item from the channel. + The read item, or a default value if no item could be read. + + if an item was read; otherwise, . + + + Returns a that will complete when data is available to read. + A used to cancel the wait operation. + + A that will complete with a result when data is available to read + or with a result when no further data will ever be available to be read due to the channel completing successfully. + If the channel completes with an exception, the task will also complete with an exception. + + + + Gets a value that indicates whether is available for use on this instance. + + + Gets a value that indicates whether is available for use on this instance. + + if peeking is supported by this channel instance; otherwise. + + + Gets a that completes when no more data will ever + be available to be read from this channel. + + + Gets the current number of items available from this channel reader. + Counting is not supported on this instance. + + + Provides a base class for writing to a channel. + Specifies the type of data that may be written to the channel. + + + Initializes an instance of the class. + + + Mark the channel as being complete, meaning no more items will be written to it. + Optional Exception indicating a failure that's causing the channel to complete. + The channel has already been marked as complete. + + + Attempts to mark the channel as being completed, meaning no more data will be written to it. + An indicating the failure causing no more data to be written, or null for success. + + if this operation successfully completes the channel; otherwise, if the channel could not be marked for completion, + for example due to having already been marked as such, or due to not supporting completion. + . + + + Attempts to write the specified item to the channel. + The item to write. + + if the item was written; otherwise, . + + + Returns a that will complete when space is available to write an item. + A used to cancel the wait operation. + A that will complete with a result when space is available to write an item + or with a result when no further writing will be permitted. + + + Asynchronously writes an item to the channel. + The value to write to the channel. + A used to cancel the write operation. + A that represents the asynchronous write operation. + + + Provides options that control the behavior of unbounded instances. + + + Initializes a new instance of the class. + + + \ No newline at end of file diff --git a/packages/System.Threading.Channels.8.0.0/lib/net6.0/System.Threading.Channels.dll b/packages/System.Threading.Channels.8.0.0/lib/net6.0/System.Threading.Channels.dll new file mode 100644 index 0000000..e3485e9 Binary files /dev/null and b/packages/System.Threading.Channels.8.0.0/lib/net6.0/System.Threading.Channels.dll differ diff --git a/packages/System.Threading.Channels.8.0.0/lib/net6.0/System.Threading.Channels.xml b/packages/System.Threading.Channels.8.0.0/lib/net6.0/System.Threading.Channels.xml new file mode 100644 index 0000000..20275dc --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/lib/net6.0/System.Threading.Channels.xml @@ -0,0 +1,243 @@ + + + + System.Threading.Channels + + + + Specifies the behavior to use when writing to a bounded channel that is already full. + + + Removes and ignores the newest item in the channel in order to make room for the item being written. + + + Removes and ignores the oldest item in the channel in order to make room for the item being written. + + + Drops the item being written. + + + Waits for space to be available in order to complete the write operation. + + + Provides options that control the behavior of bounded instances. + + + Initializes the options. + The maximum number of items the bounded channel may store. + + + Gets or sets the maximum number of items the bounded channel may store. + + + Gets or sets the behavior incurred by write operations when the channel is full. + + + Provides static methods for creating channels. + + + Creates a channel with the specified maximum capacity. + The maximum number of items the channel may store. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel with the specified maximum capacity. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel subject to the provided options. + Options that guide the behavior of the channel. + Delegate that will be called when item is being dropped from channel. See . + Specifies the type of data in the channel. + The created channel. + + + Creates an unbounded channel usable by any number of readers and writers concurrently. + The type of data in the channel. + The created channel. + + + Creates an unbounded channel subject to the provided options. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Provides a base class for channels that support reading and writing elements of type . + Specifies the type of data readable and writable in the channel. + + + Initializes an instance of the class. + + + Provides a base class for channels that support reading elements of type and writing elements of type . + Specifies the type of data that may be written to the channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Implicit cast from a to its readable half. + The being cast. + The readable half. + + + Implicit cast from a to its writable half. + The being cast. + The writable half. + + + Gets the readable half of this channel. + + + Gets the writable half of this channel. + + + Exception thrown when a channel is used after it's been closed. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The exception that is the cause of this exception. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data. + The contextual information about the source or destination. + + + Initializes a new instance of the class. + The message that describes the error. + + + Initializes a new instance of the class. + The message that describes the error. + The exception that is the cause of this exception. + + + Provides options that control the behavior of channel instances. + + + Initializes an instance of the class. + + + + if operations performed on a channel may synchronously invoke continuations subscribed to + notifications of pending async operations; if all continuations should be invoked asynchronously. + + + + readers from the channel guarantee that there will only ever be at most one read operation at a time; + if no such constraint is guaranteed. + + + + if writers to the channel guarantee that there will only ever be at most one write operation + at a time; if no such constraint is guaranteed. + + + Provides a base class for reading from a channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Creates an that enables reading all of the data from the channel. + The cancellation token to use to cancel the enumeration. If data is immediately ready for reading, then that data may be yielded even after cancellation has been requested. + The created async enumerable. + + + Asynchronously reads an item from the channel. + A used to cancel the read operation. + A that represents the asynchronous read operation. + + + Attempts to peek at an item from the channel. + The peeked item, or a default value if no item could be peeked. + + if an item was read; otherwise, . + + + Attempts to read an item from the channel. + The read item, or a default value if no item could be read. + + if an item was read; otherwise, . + + + Returns a that will complete when data is available to read. + A used to cancel the wait operation. + + A that will complete with a result when data is available to read + or with a result when no further data will ever be available to be read due to the channel completing successfully. + If the channel completes with an exception, the task will also complete with an exception. + + + + Gets a value that indicates whether is available for use on this instance. + + + Gets a value that indicates whether is available for use on this instance. + + if peeking is supported by this channel instance; otherwise. + + + Gets a that completes when no more data will ever + be available to be read from this channel. + + + Gets the current number of items available from this channel reader. + Counting is not supported on this instance. + + + Provides a base class for writing to a channel. + Specifies the type of data that may be written to the channel. + + + Initializes an instance of the class. + + + Mark the channel as being complete, meaning no more items will be written to it. + Optional Exception indicating a failure that's causing the channel to complete. + The channel has already been marked as complete. + + + Attempts to mark the channel as being completed, meaning no more data will be written to it. + An indicating the failure causing no more data to be written, or null for success. + + if this operation successfully completes the channel; otherwise, if the channel could not be marked for completion, + for example due to having already been marked as such, or due to not supporting completion. + . + + + Attempts to write the specified item to the channel. + The item to write. + + if the item was written; otherwise, . + + + Returns a that will complete when space is available to write an item. + A used to cancel the wait operation. + A that will complete with a result when space is available to write an item + or with a result when no further writing will be permitted. + + + Asynchronously writes an item to the channel. + The value to write to the channel. + A used to cancel the write operation. + A that represents the asynchronous write operation. + + + Provides options that control the behavior of unbounded instances. + + + Initializes a new instance of the class. + + + \ No newline at end of file diff --git a/packages/System.Threading.Channels.8.0.0/lib/net7.0/System.Threading.Channels.dll b/packages/System.Threading.Channels.8.0.0/lib/net7.0/System.Threading.Channels.dll new file mode 100644 index 0000000..9be9e31 Binary files /dev/null and b/packages/System.Threading.Channels.8.0.0/lib/net7.0/System.Threading.Channels.dll differ diff --git a/packages/System.Threading.Channels.8.0.0/lib/net7.0/System.Threading.Channels.xml b/packages/System.Threading.Channels.8.0.0/lib/net7.0/System.Threading.Channels.xml new file mode 100644 index 0000000..20275dc --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/lib/net7.0/System.Threading.Channels.xml @@ -0,0 +1,243 @@ + + + + System.Threading.Channels + + + + Specifies the behavior to use when writing to a bounded channel that is already full. + + + Removes and ignores the newest item in the channel in order to make room for the item being written. + + + Removes and ignores the oldest item in the channel in order to make room for the item being written. + + + Drops the item being written. + + + Waits for space to be available in order to complete the write operation. + + + Provides options that control the behavior of bounded instances. + + + Initializes the options. + The maximum number of items the bounded channel may store. + + + Gets or sets the maximum number of items the bounded channel may store. + + + Gets or sets the behavior incurred by write operations when the channel is full. + + + Provides static methods for creating channels. + + + Creates a channel with the specified maximum capacity. + The maximum number of items the channel may store. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel with the specified maximum capacity. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel subject to the provided options. + Options that guide the behavior of the channel. + Delegate that will be called when item is being dropped from channel. See . + Specifies the type of data in the channel. + The created channel. + + + Creates an unbounded channel usable by any number of readers and writers concurrently. + The type of data in the channel. + The created channel. + + + Creates an unbounded channel subject to the provided options. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Provides a base class for channels that support reading and writing elements of type . + Specifies the type of data readable and writable in the channel. + + + Initializes an instance of the class. + + + Provides a base class for channels that support reading elements of type and writing elements of type . + Specifies the type of data that may be written to the channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Implicit cast from a to its readable half. + The being cast. + The readable half. + + + Implicit cast from a to its writable half. + The being cast. + The writable half. + + + Gets the readable half of this channel. + + + Gets the writable half of this channel. + + + Exception thrown when a channel is used after it's been closed. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The exception that is the cause of this exception. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data. + The contextual information about the source or destination. + + + Initializes a new instance of the class. + The message that describes the error. + + + Initializes a new instance of the class. + The message that describes the error. + The exception that is the cause of this exception. + + + Provides options that control the behavior of channel instances. + + + Initializes an instance of the class. + + + + if operations performed on a channel may synchronously invoke continuations subscribed to + notifications of pending async operations; if all continuations should be invoked asynchronously. + + + + readers from the channel guarantee that there will only ever be at most one read operation at a time; + if no such constraint is guaranteed. + + + + if writers to the channel guarantee that there will only ever be at most one write operation + at a time; if no such constraint is guaranteed. + + + Provides a base class for reading from a channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Creates an that enables reading all of the data from the channel. + The cancellation token to use to cancel the enumeration. If data is immediately ready for reading, then that data may be yielded even after cancellation has been requested. + The created async enumerable. + + + Asynchronously reads an item from the channel. + A used to cancel the read operation. + A that represents the asynchronous read operation. + + + Attempts to peek at an item from the channel. + The peeked item, or a default value if no item could be peeked. + + if an item was read; otherwise, . + + + Attempts to read an item from the channel. + The read item, or a default value if no item could be read. + + if an item was read; otherwise, . + + + Returns a that will complete when data is available to read. + A used to cancel the wait operation. + + A that will complete with a result when data is available to read + or with a result when no further data will ever be available to be read due to the channel completing successfully. + If the channel completes with an exception, the task will also complete with an exception. + + + + Gets a value that indicates whether is available for use on this instance. + + + Gets a value that indicates whether is available for use on this instance. + + if peeking is supported by this channel instance; otherwise. + + + Gets a that completes when no more data will ever + be available to be read from this channel. + + + Gets the current number of items available from this channel reader. + Counting is not supported on this instance. + + + Provides a base class for writing to a channel. + Specifies the type of data that may be written to the channel. + + + Initializes an instance of the class. + + + Mark the channel as being complete, meaning no more items will be written to it. + Optional Exception indicating a failure that's causing the channel to complete. + The channel has already been marked as complete. + + + Attempts to mark the channel as being completed, meaning no more data will be written to it. + An indicating the failure causing no more data to be written, or null for success. + + if this operation successfully completes the channel; otherwise, if the channel could not be marked for completion, + for example due to having already been marked as such, or due to not supporting completion. + . + + + Attempts to write the specified item to the channel. + The item to write. + + if the item was written; otherwise, . + + + Returns a that will complete when space is available to write an item. + A used to cancel the wait operation. + A that will complete with a result when space is available to write an item + or with a result when no further writing will be permitted. + + + Asynchronously writes an item to the channel. + The value to write to the channel. + A used to cancel the write operation. + A that represents the asynchronous write operation. + + + Provides options that control the behavior of unbounded instances. + + + Initializes a new instance of the class. + + + \ No newline at end of file diff --git a/packages/System.Threading.Channels.8.0.0/lib/net8.0/System.Threading.Channels.dll b/packages/System.Threading.Channels.8.0.0/lib/net8.0/System.Threading.Channels.dll new file mode 100644 index 0000000..54b2b67 Binary files /dev/null and b/packages/System.Threading.Channels.8.0.0/lib/net8.0/System.Threading.Channels.dll differ diff --git a/packages/System.Threading.Channels.8.0.0/lib/net8.0/System.Threading.Channels.xml b/packages/System.Threading.Channels.8.0.0/lib/net8.0/System.Threading.Channels.xml new file mode 100644 index 0000000..20275dc --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/lib/net8.0/System.Threading.Channels.xml @@ -0,0 +1,243 @@ + + + + System.Threading.Channels + + + + Specifies the behavior to use when writing to a bounded channel that is already full. + + + Removes and ignores the newest item in the channel in order to make room for the item being written. + + + Removes and ignores the oldest item in the channel in order to make room for the item being written. + + + Drops the item being written. + + + Waits for space to be available in order to complete the write operation. + + + Provides options that control the behavior of bounded instances. + + + Initializes the options. + The maximum number of items the bounded channel may store. + + + Gets or sets the maximum number of items the bounded channel may store. + + + Gets or sets the behavior incurred by write operations when the channel is full. + + + Provides static methods for creating channels. + + + Creates a channel with the specified maximum capacity. + The maximum number of items the channel may store. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel with the specified maximum capacity. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel subject to the provided options. + Options that guide the behavior of the channel. + Delegate that will be called when item is being dropped from channel. See . + Specifies the type of data in the channel. + The created channel. + + + Creates an unbounded channel usable by any number of readers and writers concurrently. + The type of data in the channel. + The created channel. + + + Creates an unbounded channel subject to the provided options. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Provides a base class for channels that support reading and writing elements of type . + Specifies the type of data readable and writable in the channel. + + + Initializes an instance of the class. + + + Provides a base class for channels that support reading elements of type and writing elements of type . + Specifies the type of data that may be written to the channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Implicit cast from a to its readable half. + The being cast. + The readable half. + + + Implicit cast from a to its writable half. + The being cast. + The writable half. + + + Gets the readable half of this channel. + + + Gets the writable half of this channel. + + + Exception thrown when a channel is used after it's been closed. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The exception that is the cause of this exception. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data. + The contextual information about the source or destination. + + + Initializes a new instance of the class. + The message that describes the error. + + + Initializes a new instance of the class. + The message that describes the error. + The exception that is the cause of this exception. + + + Provides options that control the behavior of channel instances. + + + Initializes an instance of the class. + + + + if operations performed on a channel may synchronously invoke continuations subscribed to + notifications of pending async operations; if all continuations should be invoked asynchronously. + + + + readers from the channel guarantee that there will only ever be at most one read operation at a time; + if no such constraint is guaranteed. + + + + if writers to the channel guarantee that there will only ever be at most one write operation + at a time; if no such constraint is guaranteed. + + + Provides a base class for reading from a channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Creates an that enables reading all of the data from the channel. + The cancellation token to use to cancel the enumeration. If data is immediately ready for reading, then that data may be yielded even after cancellation has been requested. + The created async enumerable. + + + Asynchronously reads an item from the channel. + A used to cancel the read operation. + A that represents the asynchronous read operation. + + + Attempts to peek at an item from the channel. + The peeked item, or a default value if no item could be peeked. + + if an item was read; otherwise, . + + + Attempts to read an item from the channel. + The read item, or a default value if no item could be read. + + if an item was read; otherwise, . + + + Returns a that will complete when data is available to read. + A used to cancel the wait operation. + + A that will complete with a result when data is available to read + or with a result when no further data will ever be available to be read due to the channel completing successfully. + If the channel completes with an exception, the task will also complete with an exception. + + + + Gets a value that indicates whether is available for use on this instance. + + + Gets a value that indicates whether is available for use on this instance. + + if peeking is supported by this channel instance; otherwise. + + + Gets a that completes when no more data will ever + be available to be read from this channel. + + + Gets the current number of items available from this channel reader. + Counting is not supported on this instance. + + + Provides a base class for writing to a channel. + Specifies the type of data that may be written to the channel. + + + Initializes an instance of the class. + + + Mark the channel as being complete, meaning no more items will be written to it. + Optional Exception indicating a failure that's causing the channel to complete. + The channel has already been marked as complete. + + + Attempts to mark the channel as being completed, meaning no more data will be written to it. + An indicating the failure causing no more data to be written, or null for success. + + if this operation successfully completes the channel; otherwise, if the channel could not be marked for completion, + for example due to having already been marked as such, or due to not supporting completion. + . + + + Attempts to write the specified item to the channel. + The item to write. + + if the item was written; otherwise, . + + + Returns a that will complete when space is available to write an item. + A used to cancel the wait operation. + A that will complete with a result when space is available to write an item + or with a result when no further writing will be permitted. + + + Asynchronously writes an item to the channel. + The value to write to the channel. + A used to cancel the write operation. + A that represents the asynchronous write operation. + + + Provides options that control the behavior of unbounded instances. + + + Initializes a new instance of the class. + + + \ No newline at end of file diff --git a/packages/System.Threading.Channels.8.0.0/lib/netstandard2.0/System.Threading.Channels.dll b/packages/System.Threading.Channels.8.0.0/lib/netstandard2.0/System.Threading.Channels.dll new file mode 100644 index 0000000..737db46 Binary files /dev/null and b/packages/System.Threading.Channels.8.0.0/lib/netstandard2.0/System.Threading.Channels.dll differ diff --git a/packages/System.Threading.Channels.8.0.0/lib/netstandard2.0/System.Threading.Channels.xml b/packages/System.Threading.Channels.8.0.0/lib/netstandard2.0/System.Threading.Channels.xml new file mode 100644 index 0000000..20275dc --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/lib/netstandard2.0/System.Threading.Channels.xml @@ -0,0 +1,243 @@ + + + + System.Threading.Channels + + + + Specifies the behavior to use when writing to a bounded channel that is already full. + + + Removes and ignores the newest item in the channel in order to make room for the item being written. + + + Removes and ignores the oldest item in the channel in order to make room for the item being written. + + + Drops the item being written. + + + Waits for space to be available in order to complete the write operation. + + + Provides options that control the behavior of bounded instances. + + + Initializes the options. + The maximum number of items the bounded channel may store. + + + Gets or sets the maximum number of items the bounded channel may store. + + + Gets or sets the behavior incurred by write operations when the channel is full. + + + Provides static methods for creating channels. + + + Creates a channel with the specified maximum capacity. + The maximum number of items the channel may store. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel with the specified maximum capacity. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel subject to the provided options. + Options that guide the behavior of the channel. + Delegate that will be called when item is being dropped from channel. See . + Specifies the type of data in the channel. + The created channel. + + + Creates an unbounded channel usable by any number of readers and writers concurrently. + The type of data in the channel. + The created channel. + + + Creates an unbounded channel subject to the provided options. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Provides a base class for channels that support reading and writing elements of type . + Specifies the type of data readable and writable in the channel. + + + Initializes an instance of the class. + + + Provides a base class for channels that support reading elements of type and writing elements of type . + Specifies the type of data that may be written to the channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Implicit cast from a to its readable half. + The being cast. + The readable half. + + + Implicit cast from a to its writable half. + The being cast. + The writable half. + + + Gets the readable half of this channel. + + + Gets the writable half of this channel. + + + Exception thrown when a channel is used after it's been closed. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The exception that is the cause of this exception. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data. + The contextual information about the source or destination. + + + Initializes a new instance of the class. + The message that describes the error. + + + Initializes a new instance of the class. + The message that describes the error. + The exception that is the cause of this exception. + + + Provides options that control the behavior of channel instances. + + + Initializes an instance of the class. + + + + if operations performed on a channel may synchronously invoke continuations subscribed to + notifications of pending async operations; if all continuations should be invoked asynchronously. + + + + readers from the channel guarantee that there will only ever be at most one read operation at a time; + if no such constraint is guaranteed. + + + + if writers to the channel guarantee that there will only ever be at most one write operation + at a time; if no such constraint is guaranteed. + + + Provides a base class for reading from a channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Creates an that enables reading all of the data from the channel. + The cancellation token to use to cancel the enumeration. If data is immediately ready for reading, then that data may be yielded even after cancellation has been requested. + The created async enumerable. + + + Asynchronously reads an item from the channel. + A used to cancel the read operation. + A that represents the asynchronous read operation. + + + Attempts to peek at an item from the channel. + The peeked item, or a default value if no item could be peeked. + + if an item was read; otherwise, . + + + Attempts to read an item from the channel. + The read item, or a default value if no item could be read. + + if an item was read; otherwise, . + + + Returns a that will complete when data is available to read. + A used to cancel the wait operation. + + A that will complete with a result when data is available to read + or with a result when no further data will ever be available to be read due to the channel completing successfully. + If the channel completes with an exception, the task will also complete with an exception. + + + + Gets a value that indicates whether is available for use on this instance. + + + Gets a value that indicates whether is available for use on this instance. + + if peeking is supported by this channel instance; otherwise. + + + Gets a that completes when no more data will ever + be available to be read from this channel. + + + Gets the current number of items available from this channel reader. + Counting is not supported on this instance. + + + Provides a base class for writing to a channel. + Specifies the type of data that may be written to the channel. + + + Initializes an instance of the class. + + + Mark the channel as being complete, meaning no more items will be written to it. + Optional Exception indicating a failure that's causing the channel to complete. + The channel has already been marked as complete. + + + Attempts to mark the channel as being completed, meaning no more data will be written to it. + An indicating the failure causing no more data to be written, or null for success. + + if this operation successfully completes the channel; otherwise, if the channel could not be marked for completion, + for example due to having already been marked as such, or due to not supporting completion. + . + + + Attempts to write the specified item to the channel. + The item to write. + + if the item was written; otherwise, . + + + Returns a that will complete when space is available to write an item. + A used to cancel the wait operation. + A that will complete with a result when space is available to write an item + or with a result when no further writing will be permitted. + + + Asynchronously writes an item to the channel. + The value to write to the channel. + A used to cancel the write operation. + A that represents the asynchronous write operation. + + + Provides options that control the behavior of unbounded instances. + + + Initializes a new instance of the class. + + + \ No newline at end of file diff --git a/packages/System.Threading.Channels.8.0.0/lib/netstandard2.1/System.Threading.Channels.dll b/packages/System.Threading.Channels.8.0.0/lib/netstandard2.1/System.Threading.Channels.dll new file mode 100644 index 0000000..60b45fb Binary files /dev/null and b/packages/System.Threading.Channels.8.0.0/lib/netstandard2.1/System.Threading.Channels.dll differ diff --git a/packages/System.Threading.Channels.8.0.0/lib/netstandard2.1/System.Threading.Channels.xml b/packages/System.Threading.Channels.8.0.0/lib/netstandard2.1/System.Threading.Channels.xml new file mode 100644 index 0000000..20275dc --- /dev/null +++ b/packages/System.Threading.Channels.8.0.0/lib/netstandard2.1/System.Threading.Channels.xml @@ -0,0 +1,243 @@ + + + + System.Threading.Channels + + + + Specifies the behavior to use when writing to a bounded channel that is already full. + + + Removes and ignores the newest item in the channel in order to make room for the item being written. + + + Removes and ignores the oldest item in the channel in order to make room for the item being written. + + + Drops the item being written. + + + Waits for space to be available in order to complete the write operation. + + + Provides options that control the behavior of bounded instances. + + + Initializes the options. + The maximum number of items the bounded channel may store. + + + Gets or sets the maximum number of items the bounded channel may store. + + + Gets or sets the behavior incurred by write operations when the channel is full. + + + Provides static methods for creating channels. + + + Creates a channel with the specified maximum capacity. + The maximum number of items the channel may store. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel with the specified maximum capacity. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Creates a channel subject to the provided options. + Options that guide the behavior of the channel. + Delegate that will be called when item is being dropped from channel. See . + Specifies the type of data in the channel. + The created channel. + + + Creates an unbounded channel usable by any number of readers and writers concurrently. + The type of data in the channel. + The created channel. + + + Creates an unbounded channel subject to the provided options. + Options that guide the behavior of the channel. + Specifies the type of data in the channel. + The created channel. + + + Provides a base class for channels that support reading and writing elements of type . + Specifies the type of data readable and writable in the channel. + + + Initializes an instance of the class. + + + Provides a base class for channels that support reading elements of type and writing elements of type . + Specifies the type of data that may be written to the channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Implicit cast from a to its readable half. + The being cast. + The readable half. + + + Implicit cast from a to its writable half. + The being cast. + The writable half. + + + Gets the readable half of this channel. + + + Gets the writable half of this channel. + + + Exception thrown when a channel is used after it's been closed. + + + Initializes a new instance of the class. + + + Initializes a new instance of the class. + The exception that is the cause of this exception. + + + Initializes a new instance of the class with serialized data. + The object that holds the serialized object data. + The contextual information about the source or destination. + + + Initializes a new instance of the class. + The message that describes the error. + + + Initializes a new instance of the class. + The message that describes the error. + The exception that is the cause of this exception. + + + Provides options that control the behavior of channel instances. + + + Initializes an instance of the class. + + + + if operations performed on a channel may synchronously invoke continuations subscribed to + notifications of pending async operations; if all continuations should be invoked asynchronously. + + + + readers from the channel guarantee that there will only ever be at most one read operation at a time; + if no such constraint is guaranteed. + + + + if writers to the channel guarantee that there will only ever be at most one write operation + at a time; if no such constraint is guaranteed. + + + Provides a base class for reading from a channel. + Specifies the type of data that may be read from the channel. + + + Initializes an instance of the class. + + + Creates an that enables reading all of the data from the channel. + The cancellation token to use to cancel the enumeration. If data is immediately ready for reading, then that data may be yielded even after cancellation has been requested. + The created async enumerable. + + + Asynchronously reads an item from the channel. + A used to cancel the read operation. + A that represents the asynchronous read operation. + + + Attempts to peek at an item from the channel. + The peeked item, or a default value if no item could be peeked. + + if an item was read; otherwise, . + + + Attempts to read an item from the channel. + The read item, or a default value if no item could be read. + + if an item was read; otherwise, . + + + Returns a that will complete when data is available to read. + A used to cancel the wait operation. + + A that will complete with a result when data is available to read + or with a result when no further data will ever be available to be read due to the channel completing successfully. + If the channel completes with an exception, the task will also complete with an exception. + + + + Gets a value that indicates whether is available for use on this instance. + + + Gets a value that indicates whether is available for use on this instance. + + if peeking is supported by this channel instance; otherwise. + + + Gets a that completes when no more data will ever + be available to be read from this channel. + + + Gets the current number of items available from this channel reader. + Counting is not supported on this instance. + + + Provides a base class for writing to a channel. + Specifies the type of data that may be written to the channel. + + + Initializes an instance of the class. + + + Mark the channel as being complete, meaning no more items will be written to it. + Optional Exception indicating a failure that's causing the channel to complete. + The channel has already been marked as complete. + + + Attempts to mark the channel as being completed, meaning no more data will be written to it. + An indicating the failure causing no more data to be written, or null for success. + + if this operation successfully completes the channel; otherwise, if the channel could not be marked for completion, + for example due to having already been marked as such, or due to not supporting completion. + . + + + Attempts to write the specified item to the channel. + The item to write. + + if the item was written; otherwise, . + + + Returns a that will complete when space is available to write an item. + A used to cancel the wait operation. + A that will complete with a result when space is available to write an item + or with a result when no further writing will be permitted. + + + Asynchronously writes an item to the channel. + The value to write to the channel. + A used to cancel the write operation. + A that represents the asynchronous write operation. + + + Provides options that control the behavior of unbounded instances. + + + Initializes a new instance of the class. + + + \ No newline at end of file diff --git a/packages/System.Threading.Channels.8.0.0/useSharedDesignerContext.txt b/packages/System.Threading.Channels.8.0.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/.signature.p7s b/packages/System.Threading.Tasks.Extensions.4.5.4/.signature.p7s new file mode 100644 index 0000000..e0ee9f4 Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/.signature.p7s differ diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/LICENSE.TXT b/packages/System.Threading.Tasks.Extensions.4.5.4/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.Threading.Tasks.Extensions.4.5.4/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/System.Threading.Tasks.Extensions.4.5.4.nupkg b/packages/System.Threading.Tasks.Extensions.4.5.4/System.Threading.Tasks.Extensions.4.5.4.nupkg new file mode 100644 index 0000000..a608bc5 Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/System.Threading.Tasks.Extensions.4.5.4.nupkg differ diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/THIRD-PARTY-NOTICES.TXT b/packages/System.Threading.Tasks.Extensions.4.5.4/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..db542ca --- /dev/null +++ b/packages/System.Threading.Tasks.Extensions.4.5.4/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,309 @@ +.NET Core uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Core software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +http://www.unicode.org/copyright.html#License + +Copyright © 1991-2017 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in http://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +http://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/MonoAndroid10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/MonoAndroid10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/MonoTouch10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/MonoTouch10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.dll b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.dll new file mode 100644 index 0000000..eeec928 Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.dll differ diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.xml b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.xml new file mode 100644 index 0000000..5e02a99 --- /dev/null +++ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.xml @@ -0,0 +1,166 @@ + + + System.Threading.Tasks.Extensions + + + + + + + + + + + + + + + + + + + Provides a value type that wraps a and a TResult, only one of which is used. + The result. + + + Initializes a new instance of the class using the supplied task that represents the operation. + The task. + The task argument is null. + + + Initializes a new instance of the class using the supplied result of a successful operation. + The result. + + + Retrieves a object that represents this . + The object that is wrapped in this if one exists, or a new object that represents the result. + + + Configures an awaiter for this value. + true to attempt to marshal the continuation back to the captured context; otherwise, false. + The configured awaiter. + + + Creates a method builder for use with an async method. + The created builder. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Creates an awaiter for this value. + The awaiter. + + + Returns the hash code for this instance. + The hash code for the current object. + + + Gets a value that indicates whether this object represents a canceled operation. + true if this object represents a canceled operation; otherwise, false. + + + Gets a value that indicates whether this object represents a completed operation. + true if this object represents a completed operation; otherwise, false. + + + Gets a value that indicates whether this object represents a successfully completed operation. + true if this object represents a successfully completed operation; otherwise, false. + + + Gets a value that indicates whether this object represents a failed operation. + true if this object represents a failed operation; otherwise, false. + + + Compares two values for equality. + The first value to compare. + The second value to compare. + true if the two values are equal; otherwise, false. + + + Determines whether two values are unequal. + The first value to compare. + The seconed value to compare. + true if the two values are not equal; otherwise, false. + + + Gets the result. + The result. + + + Returns a string that represents the current object. + A string that represents the current object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netcoreapp2.1/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netcoreapp2.1/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.dll b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.dll new file mode 100644 index 0000000..dfc4cdf Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.dll differ diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.xml b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.xml new file mode 100644 index 0000000..5e02a99 --- /dev/null +++ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.xml @@ -0,0 +1,166 @@ + + + System.Threading.Tasks.Extensions + + + + + + + + + + + + + + + + + + + Provides a value type that wraps a and a TResult, only one of which is used. + The result. + + + Initializes a new instance of the class using the supplied task that represents the operation. + The task. + The task argument is null. + + + Initializes a new instance of the class using the supplied result of a successful operation. + The result. + + + Retrieves a object that represents this . + The object that is wrapped in this if one exists, or a new object that represents the result. + + + Configures an awaiter for this value. + true to attempt to marshal the continuation back to the captured context; otherwise, false. + The configured awaiter. + + + Creates a method builder for use with an async method. + The created builder. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Creates an awaiter for this value. + The awaiter. + + + Returns the hash code for this instance. + The hash code for the current object. + + + Gets a value that indicates whether this object represents a canceled operation. + true if this object represents a canceled operation; otherwise, false. + + + Gets a value that indicates whether this object represents a completed operation. + true if this object represents a completed operation; otherwise, false. + + + Gets a value that indicates whether this object represents a successfully completed operation. + true if this object represents a successfully completed operation; otherwise, false. + + + Gets a value that indicates whether this object represents a failed operation. + true if this object represents a failed operation; otherwise, false. + + + Compares two values for equality. + The first value to compare. + The second value to compare. + true if the two values are equal; otherwise, false. + + + Determines whether two values are unequal. + The first value to compare. + The seconed value to compare. + true if the two values are not equal; otherwise, false. + + + Gets the result. + The result. + + + Returns a string that represents the current object. + A string that represents the current object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll new file mode 100644 index 0000000..dfab234 Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll differ diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.xml b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.xml new file mode 100644 index 0000000..5e02a99 --- /dev/null +++ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.xml @@ -0,0 +1,166 @@ + + + System.Threading.Tasks.Extensions + + + + + + + + + + + + + + + + + + + Provides a value type that wraps a and a TResult, only one of which is used. + The result. + + + Initializes a new instance of the class using the supplied task that represents the operation. + The task. + The task argument is null. + + + Initializes a new instance of the class using the supplied result of a successful operation. + The result. + + + Retrieves a object that represents this . + The object that is wrapped in this if one exists, or a new object that represents the result. + + + Configures an awaiter for this value. + true to attempt to marshal the continuation back to the captured context; otherwise, false. + The configured awaiter. + + + Creates a method builder for use with an async method. + The created builder. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Creates an awaiter for this value. + The awaiter. + + + Returns the hash code for this instance. + The hash code for the current object. + + + Gets a value that indicates whether this object represents a canceled operation. + true if this object represents a canceled operation; otherwise, false. + + + Gets a value that indicates whether this object represents a completed operation. + true if this object represents a completed operation; otherwise, false. + + + Gets a value that indicates whether this object represents a successfully completed operation. + true if this object represents a successfully completed operation; otherwise, false. + + + Gets a value that indicates whether this object represents a failed operation. + true if this object represents a failed operation; otherwise, false. + + + Compares two values for equality. + The first value to compare. + The second value to compare. + true if the two values are equal; otherwise, false. + + + Determines whether two values are unequal. + The first value to compare. + The seconed value to compare. + true if the two values are not equal; otherwise, false. + + + Gets the result. + The result. + + + Returns a string that represents the current object. + A string that represents the current object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll new file mode 100644 index 0000000..dfc4cdf Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll differ diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml new file mode 100644 index 0000000..5e02a99 --- /dev/null +++ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml @@ -0,0 +1,166 @@ + + + System.Threading.Tasks.Extensions + + + + + + + + + + + + + + + + + + + Provides a value type that wraps a and a TResult, only one of which is used. + The result. + + + Initializes a new instance of the class using the supplied task that represents the operation. + The task. + The task argument is null. + + + Initializes a new instance of the class using the supplied result of a successful operation. + The result. + + + Retrieves a object that represents this . + The object that is wrapped in this if one exists, or a new object that represents the result. + + + Configures an awaiter for this value. + true to attempt to marshal the continuation back to the captured context; otherwise, false. + The configured awaiter. + + + Creates a method builder for use with an async method. + The created builder. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + true if the specified object is equal to the current object; otherwise, false. + + + Creates an awaiter for this value. + The awaiter. + + + Returns the hash code for this instance. + The hash code for the current object. + + + Gets a value that indicates whether this object represents a canceled operation. + true if this object represents a canceled operation; otherwise, false. + + + Gets a value that indicates whether this object represents a completed operation. + true if this object represents a completed operation; otherwise, false. + + + Gets a value that indicates whether this object represents a successfully completed operation. + true if this object represents a successfully completed operation; otherwise, false. + + + Gets a value that indicates whether this object represents a failed operation. + true if this object represents a failed operation; otherwise, false. + + + Compares two values for equality. + The first value to compare. + The second value to compare. + true if the two values are equal; otherwise, false. + + + Determines whether two values are unequal. + The first value to compare. + The seconed value to compare. + true if the two values are not equal; otherwise, false. + + + Gets the result. + The result. + + + Returns a string that represents the current object. + A string that represents the current object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinios10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinios10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinmac20/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinmac20/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarintvos10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarintvos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinwatchos10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinwatchos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/MonoAndroid10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/MonoAndroid10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/MonoTouch10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/MonoTouch10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/netcoreapp2.1/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/netcoreapp2.1/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinios10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinios10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinmac20/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinmac20/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarintvos10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarintvos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinwatchos10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinwatchos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/useSharedDesignerContext.txt b/packages/System.Threading.Tasks.Extensions.4.5.4/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/version.txt b/packages/System.Threading.Tasks.Extensions.4.5.4/version.txt new file mode 100644 index 0000000..8d6cdd6 --- /dev/null +++ b/packages/System.Threading.Tasks.Extensions.4.5.4/version.txt @@ -0,0 +1 @@ +7601f4f6225089ffb291dc7d58293c7bbf5c5d4f diff --git a/packages/System.ValueTuple.4.5.0/.signature.p7s b/packages/System.ValueTuple.4.5.0/.signature.p7s new file mode 100644 index 0000000..355e384 Binary files /dev/null and b/packages/System.ValueTuple.4.5.0/.signature.p7s differ diff --git a/packages/System.ValueTuple.4.5.0/LICENSE.TXT b/packages/System.ValueTuple.4.5.0/LICENSE.TXT new file mode 100644 index 0000000..984713a --- /dev/null +++ b/packages/System.ValueTuple.4.5.0/LICENSE.TXT @@ -0,0 +1,23 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation and Contributors + +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. diff --git a/packages/System.ValueTuple.4.5.0/System.ValueTuple.4.5.0.nupkg b/packages/System.ValueTuple.4.5.0/System.ValueTuple.4.5.0.nupkg new file mode 100644 index 0000000..595280b Binary files /dev/null and b/packages/System.ValueTuple.4.5.0/System.ValueTuple.4.5.0.nupkg differ diff --git a/packages/System.ValueTuple.4.5.0/THIRD-PARTY-NOTICES.TXT b/packages/System.ValueTuple.4.5.0/THIRD-PARTY-NOTICES.TXT new file mode 100644 index 0000000..db542ca --- /dev/null +++ b/packages/System.ValueTuple.4.5.0/THIRD-PARTY-NOTICES.TXT @@ -0,0 +1,309 @@ +.NET Core uses third-party libraries or other resources that may be +distributed under licenses different than the .NET Core software. + +In the event that we accidentally failed to list a required notice, please +bring it to our attention. Post an issue or email us: + + dotnet@microsoft.com + +The attached notices are provided for information only. + +License notice for Slicing-by-8 +------------------------------- + +http://sourceforge.net/projects/slicing-by-8/ + +Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + + +This software program is licensed subject to the BSD License, available at +http://www.opensource.org/licenses/bsd-license.html. + + +License notice for Unicode data +------------------------------- + +http://www.unicode.org/copyright.html#License + +Copyright © 1991-2017 Unicode, Inc. All rights reserved. +Distributed under the Terms of Use in http://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Unicode data files and any associated documentation +(the "Data Files") or Unicode software and any associated documentation +(the "Software") to deal in the Data Files or Software +without restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, and/or sell copies of +the Data Files or Software, and to permit persons to whom the Data Files +or Software are furnished to do so, provided that either +(a) this copyright and permission notice appear with all copies +of the Data Files or Software, or +(b) this copyright and permission notice appear in associated +Documentation. + +THE DATA FILES AND SOFTWARE ARE 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 OF THIRD PARTY RIGHTS. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS +NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL +DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, +DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER +TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder +shall not be used in advertising or otherwise to promote the sale, +use or other dealings in these Data Files or Software without prior +written authorization of the copyright holder. + +License notice for Zlib +----------------------- + +https://github.com/madler/zlib +http://zlib.net/zlib_license.html + +/* zlib.h -- interface of the 'zlib' general purpose compression library + version 1.2.11, January 15th, 2017 + + Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + Jean-loup Gailly Mark Adler + jloup@gzip.org madler@alumni.caltech.edu + +*/ + +License notice for Mono +------------------------------- + +http://www.mono-project.com/docs/about-mono/ + +Copyright (c) .NET Foundation Contributors + +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the Software), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +License notice for International Organization for Standardization +----------------------------------------------------------------- + +Portions (C) International Organization for Standardization 1986: + Permission to copy in any form is granted for use with + conforming SGML systems and applications as defined in + ISO 8879, provided this notice is included in all copies. + +License notice for Intel +------------------------ + +"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License notice for Xamarin and Novell +------------------------------------- + +Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Copyright (c) 2011 Novell, Inc (http://www.novell.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +Third party notice for W3C +-------------------------- + +"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE +Status: This license takes effect 13 May, 2015. +This work is being provided by the copyright holders under the following license. +License +By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions. +Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications: +The full text of this NOTICE in a location viewable to users of the redistributed or derivative work. +Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included. +Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)." +Disclaimers +THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. +COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT. +The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders." + +License notice for Bit Twiddling Hacks +-------------------------------------- + +Bit Twiddling Hacks + +By Sean Eron Anderson +seander@cs.stanford.edu + +Individually, the code snippets here are in the public domain (unless otherwise +noted) — feel free to use them however you please. The aggregate collection and +descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are +distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and +without even the implied warranty of merchantability or fitness for a particular +purpose. + +License notice for Brotli +-------------------------------------- + +Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. + +compress_fragment.c: +Copyright (c) 2011, Google Inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +decode_fuzzer.c: +Copyright (c) 2015 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." + diff --git a/packages/System.ValueTuple.4.5.0/lib/MonoAndroid10/_._ b/packages/System.ValueTuple.4.5.0/lib/MonoAndroid10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/lib/MonoTouch10/_._ b/packages/System.ValueTuple.4.5.0/lib/MonoTouch10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/lib/net461/System.ValueTuple.dll b/packages/System.ValueTuple.4.5.0/lib/net461/System.ValueTuple.dll new file mode 100644 index 0000000..1cadbf3 Binary files /dev/null and b/packages/System.ValueTuple.4.5.0/lib/net461/System.ValueTuple.dll differ diff --git a/packages/System.ValueTuple.4.5.0/lib/net461/System.ValueTuple.xml b/packages/System.ValueTuple.4.5.0/lib/net461/System.ValueTuple.xml new file mode 100644 index 0000000..6dcce66 --- /dev/null +++ b/packages/System.ValueTuple.4.5.0/lib/net461/System.ValueTuple.xml @@ -0,0 +1,1299 @@ + + + + System.ValueTuple + + + + + Indicates that the use of on a member is meant to be treated as a tuple with element names. + + + + + Initializes a new instance of the class. + + + Specifies, in a pre-order depth-first traversal of a type's + construction, which occurrences are + meant to carry element names. + + + This constructor is meant to be used on types that contain an + instantiation of that contains + element names. For instance, if C is a generic type with + two type parameters, then a use of the constructed type C{, might be intended to + treat the first type argument as a tuple with element names and the + second as a tuple without element names. In which case, the + appropriate attribute specification should use a + transformNames value of { "name1", "name2", null, null, + null }. + + + + + Specifies, in a pre-order depth-first traversal of a type's + construction, which elements are + meant to carry element names. + + + + + Provides extension methods for instances to interop with C# tuples features (deconstruction syntax, converting from and to ). + + + + + Deconstruct a properly nested with 1 elements. + + + + + Deconstruct a properly nested with 2 elements. + + + + + Deconstruct a properly nested with 3 elements. + + + + + Deconstruct a properly nested with 4 elements. + + + + + Deconstruct a properly nested with 5 elements. + + + + + Deconstruct a properly nested with 6 elements. + + + + + Deconstruct a properly nested with 7 elements. + + + + + Deconstruct a properly nested with 8 elements. + + + + + Deconstruct a properly nested with 9 elements. + + + + + Deconstruct a properly nested with 10 elements. + + + + + Deconstruct a properly nested with 11 elements. + + + + + Deconstruct a properly nested with 12 elements. + + + + + Deconstruct a properly nested with 13 elements. + + + + + Deconstruct a properly nested with 14 elements. + + + + + Deconstruct a properly nested with 15 elements. + + + + + Deconstruct a properly nested with 16 elements. + + + + + Deconstruct a properly nested with 17 elements. + + + + + Deconstruct a properly nested with 18 elements. + + + + + Deconstruct a properly nested with 19 elements. + + + + + Deconstruct a properly nested with 20 elements. + + + + + Deconstruct a properly nested with 21 elements. + + + + + Make a properly nested from a properly nested with 1 element. + + + + + Make a properly nested from a properly nested with 2 elements. + + + + + Make a properly nested from a properly nested with 3 elements. + + + + + Make a properly nested from a properly nested with 4 elements. + + + + + Make a properly nested from a properly nested with 5 elements. + + + + + Make a properly nested from a properly nested with 6 elements. + + + + + Make a properly nested from a properly nested with 7 elements. + + + + + Make a properly nested from a properly nested with 8 elements. + + + + + Make a properly nested from a properly nested with 9 elements. + + + + + Make a properly nested from a properly nested with 10 elements. + + + + + Make a properly nested from a properly nested with 11 elements. + + + + + Make a properly nested from a properly nested with 12 elements. + + + + + Make a properly nested from a properly nested with 13 elements. + + + + + Make a properly nested from a properly nested with 14 elements. + + + + + Make a properly nested from a properly nested with 15 elements. + + + + + Make a properly nested from a properly nested with 16 elements. + + + + + Make a properly nested from a properly nested with 17 elements. + + + + + Make a properly nested from a properly nested with 18 elements. + + + + + Make a properly nested from a properly nested with 19 elements. + + + + + Make a properly nested from a properly nested with 20 elements. + + + + + Make a properly nested from a properly nested with 21 elements. + + + + + Make a properly nested from a properly nested with 1 element. + + + + + Make a properly nested from a properly nested with 2 elements. + + + + + Make a properly nested from a properly nested with 3 elements. + + + + + Make a properly nested from a properly nested with 4 elements. + + + + + Make a properly nested from a properly nested with 5 elements. + + + + + Make a properly nested from a properly nested with 6 elements. + + + + + Make a properly nested from a properly nested with 7 elements. + + + + + Make a properly nested from a properly nested with 8 elements. + + + + + Make a properly nested from a properly nested with 9 elements. + + + + + Make a properly nested from a properly nested with 10 elements. + + + + + Make a properly nested from a properly nested with 11 elements. + + + + + Make a properly nested from a properly nested with 12 elements. + + + + + Make a properly nested from a properly nested with 13 elements. + + + + + Make a properly nested from a properly nested with 14 elements. + + + + + Make a properly nested from a properly nested with 15 elements. + + + + + Make a properly nested from a properly nested with 16 elements. + + + + + Make a properly nested from a properly nested with 17 elements. + + + + + Make a properly nested from a properly nested with 18 elements. + + + + + Make a properly nested from a properly nested with 19 elements. + + + + + Make a properly nested from a properly nested with 20 elements. + + + + + Make a properly nested from a properly nested with 21 elements. + + + + + Helper so we can call some tuple methods recursively without knowing the underlying types. + + + + + The ValueTuple types (from arity 0 to 8) comprise the runtime implementation that underlies tuples in C# and struct tuples in F#. + Aside from created via language syntax, they are most easily created via the ValueTuple.Create factory methods. + The System.ValueTuple types differ from the System.Tuple types in that: + - they are structs rather than classes, + - they are mutable rather than readonly, and + - their members (such as Item1, Item2, etc) are fields rather than properties. + + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if is a . + + + Returns a value indicating whether this instance is equal to a specified value. + An instance to compare to this instance. + true if has the same value as this instance; otherwise, false. + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + Returns the hash code for this instance. + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (). + + + + Creates a new struct 0-tuple. + A 0-tuple. + + + Creates a new struct 1-tuple, or singleton. + The type of the first component of the tuple. + The value of the first component of the tuple. + A 1-tuple (singleton) whose value is (item1). + + + Creates a new struct 2-tuple, or pair. + The type of the first component of the tuple. + The type of the second component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + A 2-tuple (pair) whose value is (item1, item2). + + + Creates a new struct 3-tuple, or triple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + A 3-tuple (triple) whose value is (item1, item2, item3). + + + Creates a new struct 4-tuple, or quadruple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + A 4-tuple (quadruple) whose value is (item1, item2, item3, item4). + + + Creates a new struct 5-tuple, or quintuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + A 5-tuple (quintuple) whose value is (item1, item2, item3, item4, item5). + + + Creates a new struct 6-tuple, or sextuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + A 6-tuple (sextuple) whose value is (item1, item2, item3, item4, item5, item6). + + + Creates a new struct 7-tuple, or septuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + A 7-tuple (septuple) whose value is (item1, item2, item3, item4, item5, item6, item7). + + + Creates a new struct 8-tuple, or octuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + The type of the eighth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + The value of the eighth component of the tuple. + An 8-tuple (octuple) whose value is (item1, item2, item3, item4, item5, item6, item7, item8). + + + Represents a 1-tuple, or singleton, as a value type. + The type of the tuple's only component. + + + + The current instance's first component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its field + is equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1), + where Item1 represents the value of . If the field is , + it is represented as . + + + + + Represents a 2-tuple, or pair, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + + Returns a value that indicates whether the current instance is equal to a specified object based on a specified comparison method. + + The object to compare with this instance. + An object that defines the method to use to evaluate whether the two objects are equal. + if the current instance is equal to the specified object; otherwise, . + + + This member is an explicit interface member implementation. It can be used only when the + instance is cast to an interface. + + The implementation is called only if other is not , + and if it can be successfully cast (in C#) or converted (in Visual Basic) to a + whose components are of the same types as those of the current instance. The IStructuralEquatable.Equals(Object, IEqualityComparer) method + first passes the values of the objects to be compared to the + implementation. If this method call returns , the method is + called again and passed the values of the two instances. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2), + where Item1 and Item2 represent the values of the + and fields. If either field value is , + it is represented as . + + + + + Represents a 3-tuple, or triple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3). + If any field value is , it is represented as . + + + + + Represents a 4-tuple, or quadruple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4). + If any field value is , it is represented as . + + + + + Represents a 5-tuple, or quintuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5). + If any field value is , it is represented as . + + + + + Represents a 6-tuple, or sixtuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + The type of the tuple's sixth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + The current instance's sixth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + The value of the tuple's sixth component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5, Item6). + If any field value is , it is represented as . + + + + + Represents a 7-tuple, or sentuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + The type of the tuple's sixth component. + The type of the tuple's seventh component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + The current instance's sixth component. + + + + + The current instance's seventh component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + The value of the tuple's sixth component. + The value of the tuple's seventh component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5, Item6, Item7). + If any field value is , it is represented as . + + + + + Represents an 8-tuple, or octuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + The type of the tuple's sixth component. + The type of the tuple's seventh component. + The type of the tuple's eighth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + The current instance's sixth component. + + + + + The current instance's seventh component. + + + + + The current instance's eighth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + The value of the tuple's sixth component. + The value of the tuple's seventh component. + The value of the tuple's eight component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5, Item6, Item7, Rest). + If any field value is , it is represented as . + + + + diff --git a/packages/System.ValueTuple.4.5.0/lib/net47/System.ValueTuple.dll b/packages/System.ValueTuple.4.5.0/lib/net47/System.ValueTuple.dll new file mode 100644 index 0000000..4ce28fd Binary files /dev/null and b/packages/System.ValueTuple.4.5.0/lib/net47/System.ValueTuple.dll differ diff --git a/packages/System.ValueTuple.4.5.0/lib/net47/System.ValueTuple.xml b/packages/System.ValueTuple.4.5.0/lib/net47/System.ValueTuple.xml new file mode 100644 index 0000000..1151832 --- /dev/null +++ b/packages/System.ValueTuple.4.5.0/lib/net47/System.ValueTuple.xml @@ -0,0 +1,8 @@ + + + + System.ValueTuple + + + + diff --git a/packages/System.ValueTuple.4.5.0/lib/netcoreapp2.0/_._ b/packages/System.ValueTuple.4.5.0/lib/netcoreapp2.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/lib/netstandard1.0/System.ValueTuple.dll b/packages/System.ValueTuple.4.5.0/lib/netstandard1.0/System.ValueTuple.dll new file mode 100644 index 0000000..65fa9ee Binary files /dev/null and b/packages/System.ValueTuple.4.5.0/lib/netstandard1.0/System.ValueTuple.dll differ diff --git a/packages/System.ValueTuple.4.5.0/lib/netstandard1.0/System.ValueTuple.xml b/packages/System.ValueTuple.4.5.0/lib/netstandard1.0/System.ValueTuple.xml new file mode 100644 index 0000000..6dcce66 --- /dev/null +++ b/packages/System.ValueTuple.4.5.0/lib/netstandard1.0/System.ValueTuple.xml @@ -0,0 +1,1299 @@ + + + + System.ValueTuple + + + + + Indicates that the use of on a member is meant to be treated as a tuple with element names. + + + + + Initializes a new instance of the class. + + + Specifies, in a pre-order depth-first traversal of a type's + construction, which occurrences are + meant to carry element names. + + + This constructor is meant to be used on types that contain an + instantiation of that contains + element names. For instance, if C is a generic type with + two type parameters, then a use of the constructed type C{, might be intended to + treat the first type argument as a tuple with element names and the + second as a tuple without element names. In which case, the + appropriate attribute specification should use a + transformNames value of { "name1", "name2", null, null, + null }. + + + + + Specifies, in a pre-order depth-first traversal of a type's + construction, which elements are + meant to carry element names. + + + + + Provides extension methods for instances to interop with C# tuples features (deconstruction syntax, converting from and to ). + + + + + Deconstruct a properly nested with 1 elements. + + + + + Deconstruct a properly nested with 2 elements. + + + + + Deconstruct a properly nested with 3 elements. + + + + + Deconstruct a properly nested with 4 elements. + + + + + Deconstruct a properly nested with 5 elements. + + + + + Deconstruct a properly nested with 6 elements. + + + + + Deconstruct a properly nested with 7 elements. + + + + + Deconstruct a properly nested with 8 elements. + + + + + Deconstruct a properly nested with 9 elements. + + + + + Deconstruct a properly nested with 10 elements. + + + + + Deconstruct a properly nested with 11 elements. + + + + + Deconstruct a properly nested with 12 elements. + + + + + Deconstruct a properly nested with 13 elements. + + + + + Deconstruct a properly nested with 14 elements. + + + + + Deconstruct a properly nested with 15 elements. + + + + + Deconstruct a properly nested with 16 elements. + + + + + Deconstruct a properly nested with 17 elements. + + + + + Deconstruct a properly nested with 18 elements. + + + + + Deconstruct a properly nested with 19 elements. + + + + + Deconstruct a properly nested with 20 elements. + + + + + Deconstruct a properly nested with 21 elements. + + + + + Make a properly nested from a properly nested with 1 element. + + + + + Make a properly nested from a properly nested with 2 elements. + + + + + Make a properly nested from a properly nested with 3 elements. + + + + + Make a properly nested from a properly nested with 4 elements. + + + + + Make a properly nested from a properly nested with 5 elements. + + + + + Make a properly nested from a properly nested with 6 elements. + + + + + Make a properly nested from a properly nested with 7 elements. + + + + + Make a properly nested from a properly nested with 8 elements. + + + + + Make a properly nested from a properly nested with 9 elements. + + + + + Make a properly nested from a properly nested with 10 elements. + + + + + Make a properly nested from a properly nested with 11 elements. + + + + + Make a properly nested from a properly nested with 12 elements. + + + + + Make a properly nested from a properly nested with 13 elements. + + + + + Make a properly nested from a properly nested with 14 elements. + + + + + Make a properly nested from a properly nested with 15 elements. + + + + + Make a properly nested from a properly nested with 16 elements. + + + + + Make a properly nested from a properly nested with 17 elements. + + + + + Make a properly nested from a properly nested with 18 elements. + + + + + Make a properly nested from a properly nested with 19 elements. + + + + + Make a properly nested from a properly nested with 20 elements. + + + + + Make a properly nested from a properly nested with 21 elements. + + + + + Make a properly nested from a properly nested with 1 element. + + + + + Make a properly nested from a properly nested with 2 elements. + + + + + Make a properly nested from a properly nested with 3 elements. + + + + + Make a properly nested from a properly nested with 4 elements. + + + + + Make a properly nested from a properly nested with 5 elements. + + + + + Make a properly nested from a properly nested with 6 elements. + + + + + Make a properly nested from a properly nested with 7 elements. + + + + + Make a properly nested from a properly nested with 8 elements. + + + + + Make a properly nested from a properly nested with 9 elements. + + + + + Make a properly nested from a properly nested with 10 elements. + + + + + Make a properly nested from a properly nested with 11 elements. + + + + + Make a properly nested from a properly nested with 12 elements. + + + + + Make a properly nested from a properly nested with 13 elements. + + + + + Make a properly nested from a properly nested with 14 elements. + + + + + Make a properly nested from a properly nested with 15 elements. + + + + + Make a properly nested from a properly nested with 16 elements. + + + + + Make a properly nested from a properly nested with 17 elements. + + + + + Make a properly nested from a properly nested with 18 elements. + + + + + Make a properly nested from a properly nested with 19 elements. + + + + + Make a properly nested from a properly nested with 20 elements. + + + + + Make a properly nested from a properly nested with 21 elements. + + + + + Helper so we can call some tuple methods recursively without knowing the underlying types. + + + + + The ValueTuple types (from arity 0 to 8) comprise the runtime implementation that underlies tuples in C# and struct tuples in F#. + Aside from created via language syntax, they are most easily created via the ValueTuple.Create factory methods. + The System.ValueTuple types differ from the System.Tuple types in that: + - they are structs rather than classes, + - they are mutable rather than readonly, and + - their members (such as Item1, Item2, etc) are fields rather than properties. + + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if is a . + + + Returns a value indicating whether this instance is equal to a specified value. + An instance to compare to this instance. + true if has the same value as this instance; otherwise, false. + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + Returns the hash code for this instance. + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (). + + + + Creates a new struct 0-tuple. + A 0-tuple. + + + Creates a new struct 1-tuple, or singleton. + The type of the first component of the tuple. + The value of the first component of the tuple. + A 1-tuple (singleton) whose value is (item1). + + + Creates a new struct 2-tuple, or pair. + The type of the first component of the tuple. + The type of the second component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + A 2-tuple (pair) whose value is (item1, item2). + + + Creates a new struct 3-tuple, or triple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + A 3-tuple (triple) whose value is (item1, item2, item3). + + + Creates a new struct 4-tuple, or quadruple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + A 4-tuple (quadruple) whose value is (item1, item2, item3, item4). + + + Creates a new struct 5-tuple, or quintuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + A 5-tuple (quintuple) whose value is (item1, item2, item3, item4, item5). + + + Creates a new struct 6-tuple, or sextuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + A 6-tuple (sextuple) whose value is (item1, item2, item3, item4, item5, item6). + + + Creates a new struct 7-tuple, or septuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + A 7-tuple (septuple) whose value is (item1, item2, item3, item4, item5, item6, item7). + + + Creates a new struct 8-tuple, or octuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + The type of the eighth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + The value of the eighth component of the tuple. + An 8-tuple (octuple) whose value is (item1, item2, item3, item4, item5, item6, item7, item8). + + + Represents a 1-tuple, or singleton, as a value type. + The type of the tuple's only component. + + + + The current instance's first component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its field + is equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1), + where Item1 represents the value of . If the field is , + it is represented as . + + + + + Represents a 2-tuple, or pair, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + + Returns a value that indicates whether the current instance is equal to a specified object based on a specified comparison method. + + The object to compare with this instance. + An object that defines the method to use to evaluate whether the two objects are equal. + if the current instance is equal to the specified object; otherwise, . + + + This member is an explicit interface member implementation. It can be used only when the + instance is cast to an interface. + + The implementation is called only if other is not , + and if it can be successfully cast (in C#) or converted (in Visual Basic) to a + whose components are of the same types as those of the current instance. The IStructuralEquatable.Equals(Object, IEqualityComparer) method + first passes the values of the objects to be compared to the + implementation. If this method call returns , the method is + called again and passed the values of the two instances. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2), + where Item1 and Item2 represent the values of the + and fields. If either field value is , + it is represented as . + + + + + Represents a 3-tuple, or triple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3). + If any field value is , it is represented as . + + + + + Represents a 4-tuple, or quadruple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4). + If any field value is , it is represented as . + + + + + Represents a 5-tuple, or quintuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5). + If any field value is , it is represented as . + + + + + Represents a 6-tuple, or sixtuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + The type of the tuple's sixth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + The current instance's sixth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + The value of the tuple's sixth component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5, Item6). + If any field value is , it is represented as . + + + + + Represents a 7-tuple, or sentuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + The type of the tuple's sixth component. + The type of the tuple's seventh component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + The current instance's sixth component. + + + + + The current instance's seventh component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + The value of the tuple's sixth component. + The value of the tuple's seventh component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5, Item6, Item7). + If any field value is , it is represented as . + + + + + Represents an 8-tuple, or octuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + The type of the tuple's sixth component. + The type of the tuple's seventh component. + The type of the tuple's eighth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + The current instance's sixth component. + + + + + The current instance's seventh component. + + + + + The current instance's eighth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + The value of the tuple's sixth component. + The value of the tuple's seventh component. + The value of the tuple's eight component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5, Item6, Item7, Rest). + If any field value is , it is represented as . + + + + diff --git a/packages/System.ValueTuple.4.5.0/lib/netstandard2.0/_._ b/packages/System.ValueTuple.4.5.0/lib/netstandard2.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/lib/portable-net40+sl4+win8+wp8/System.ValueTuple.dll b/packages/System.ValueTuple.4.5.0/lib/portable-net40+sl4+win8+wp8/System.ValueTuple.dll new file mode 100644 index 0000000..b63769a Binary files /dev/null and b/packages/System.ValueTuple.4.5.0/lib/portable-net40+sl4+win8+wp8/System.ValueTuple.dll differ diff --git a/packages/System.ValueTuple.4.5.0/lib/portable-net40+sl4+win8+wp8/System.ValueTuple.xml b/packages/System.ValueTuple.4.5.0/lib/portable-net40+sl4+win8+wp8/System.ValueTuple.xml new file mode 100644 index 0000000..6dcce66 --- /dev/null +++ b/packages/System.ValueTuple.4.5.0/lib/portable-net40+sl4+win8+wp8/System.ValueTuple.xml @@ -0,0 +1,1299 @@ + + + + System.ValueTuple + + + + + Indicates that the use of on a member is meant to be treated as a tuple with element names. + + + + + Initializes a new instance of the class. + + + Specifies, in a pre-order depth-first traversal of a type's + construction, which occurrences are + meant to carry element names. + + + This constructor is meant to be used on types that contain an + instantiation of that contains + element names. For instance, if C is a generic type with + two type parameters, then a use of the constructed type C{, might be intended to + treat the first type argument as a tuple with element names and the + second as a tuple without element names. In which case, the + appropriate attribute specification should use a + transformNames value of { "name1", "name2", null, null, + null }. + + + + + Specifies, in a pre-order depth-first traversal of a type's + construction, which elements are + meant to carry element names. + + + + + Provides extension methods for instances to interop with C# tuples features (deconstruction syntax, converting from and to ). + + + + + Deconstruct a properly nested with 1 elements. + + + + + Deconstruct a properly nested with 2 elements. + + + + + Deconstruct a properly nested with 3 elements. + + + + + Deconstruct a properly nested with 4 elements. + + + + + Deconstruct a properly nested with 5 elements. + + + + + Deconstruct a properly nested with 6 elements. + + + + + Deconstruct a properly nested with 7 elements. + + + + + Deconstruct a properly nested with 8 elements. + + + + + Deconstruct a properly nested with 9 elements. + + + + + Deconstruct a properly nested with 10 elements. + + + + + Deconstruct a properly nested with 11 elements. + + + + + Deconstruct a properly nested with 12 elements. + + + + + Deconstruct a properly nested with 13 elements. + + + + + Deconstruct a properly nested with 14 elements. + + + + + Deconstruct a properly nested with 15 elements. + + + + + Deconstruct a properly nested with 16 elements. + + + + + Deconstruct a properly nested with 17 elements. + + + + + Deconstruct a properly nested with 18 elements. + + + + + Deconstruct a properly nested with 19 elements. + + + + + Deconstruct a properly nested with 20 elements. + + + + + Deconstruct a properly nested with 21 elements. + + + + + Make a properly nested from a properly nested with 1 element. + + + + + Make a properly nested from a properly nested with 2 elements. + + + + + Make a properly nested from a properly nested with 3 elements. + + + + + Make a properly nested from a properly nested with 4 elements. + + + + + Make a properly nested from a properly nested with 5 elements. + + + + + Make a properly nested from a properly nested with 6 elements. + + + + + Make a properly nested from a properly nested with 7 elements. + + + + + Make a properly nested from a properly nested with 8 elements. + + + + + Make a properly nested from a properly nested with 9 elements. + + + + + Make a properly nested from a properly nested with 10 elements. + + + + + Make a properly nested from a properly nested with 11 elements. + + + + + Make a properly nested from a properly nested with 12 elements. + + + + + Make a properly nested from a properly nested with 13 elements. + + + + + Make a properly nested from a properly nested with 14 elements. + + + + + Make a properly nested from a properly nested with 15 elements. + + + + + Make a properly nested from a properly nested with 16 elements. + + + + + Make a properly nested from a properly nested with 17 elements. + + + + + Make a properly nested from a properly nested with 18 elements. + + + + + Make a properly nested from a properly nested with 19 elements. + + + + + Make a properly nested from a properly nested with 20 elements. + + + + + Make a properly nested from a properly nested with 21 elements. + + + + + Make a properly nested from a properly nested with 1 element. + + + + + Make a properly nested from a properly nested with 2 elements. + + + + + Make a properly nested from a properly nested with 3 elements. + + + + + Make a properly nested from a properly nested with 4 elements. + + + + + Make a properly nested from a properly nested with 5 elements. + + + + + Make a properly nested from a properly nested with 6 elements. + + + + + Make a properly nested from a properly nested with 7 elements. + + + + + Make a properly nested from a properly nested with 8 elements. + + + + + Make a properly nested from a properly nested with 9 elements. + + + + + Make a properly nested from a properly nested with 10 elements. + + + + + Make a properly nested from a properly nested with 11 elements. + + + + + Make a properly nested from a properly nested with 12 elements. + + + + + Make a properly nested from a properly nested with 13 elements. + + + + + Make a properly nested from a properly nested with 14 elements. + + + + + Make a properly nested from a properly nested with 15 elements. + + + + + Make a properly nested from a properly nested with 16 elements. + + + + + Make a properly nested from a properly nested with 17 elements. + + + + + Make a properly nested from a properly nested with 18 elements. + + + + + Make a properly nested from a properly nested with 19 elements. + + + + + Make a properly nested from a properly nested with 20 elements. + + + + + Make a properly nested from a properly nested with 21 elements. + + + + + Helper so we can call some tuple methods recursively without knowing the underlying types. + + + + + The ValueTuple types (from arity 0 to 8) comprise the runtime implementation that underlies tuples in C# and struct tuples in F#. + Aside from created via language syntax, they are most easily created via the ValueTuple.Create factory methods. + The System.ValueTuple types differ from the System.Tuple types in that: + - they are structs rather than classes, + - they are mutable rather than readonly, and + - their members (such as Item1, Item2, etc) are fields rather than properties. + + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if is a . + + + Returns a value indicating whether this instance is equal to a specified value. + An instance to compare to this instance. + true if has the same value as this instance; otherwise, false. + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + Returns the hash code for this instance. + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (). + + + + Creates a new struct 0-tuple. + A 0-tuple. + + + Creates a new struct 1-tuple, or singleton. + The type of the first component of the tuple. + The value of the first component of the tuple. + A 1-tuple (singleton) whose value is (item1). + + + Creates a new struct 2-tuple, or pair. + The type of the first component of the tuple. + The type of the second component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + A 2-tuple (pair) whose value is (item1, item2). + + + Creates a new struct 3-tuple, or triple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + A 3-tuple (triple) whose value is (item1, item2, item3). + + + Creates a new struct 4-tuple, or quadruple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + A 4-tuple (quadruple) whose value is (item1, item2, item3, item4). + + + Creates a new struct 5-tuple, or quintuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + A 5-tuple (quintuple) whose value is (item1, item2, item3, item4, item5). + + + Creates a new struct 6-tuple, or sextuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + A 6-tuple (sextuple) whose value is (item1, item2, item3, item4, item5, item6). + + + Creates a new struct 7-tuple, or septuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + A 7-tuple (septuple) whose value is (item1, item2, item3, item4, item5, item6, item7). + + + Creates a new struct 8-tuple, or octuple. + The type of the first component of the tuple. + The type of the second component of the tuple. + The type of the third component of the tuple. + The type of the fourth component of the tuple. + The type of the fifth component of the tuple. + The type of the sixth component of the tuple. + The type of the seventh component of the tuple. + The type of the eighth component of the tuple. + The value of the first component of the tuple. + The value of the second component of the tuple. + The value of the third component of the tuple. + The value of the fourth component of the tuple. + The value of the fifth component of the tuple. + The value of the sixth component of the tuple. + The value of the seventh component of the tuple. + The value of the eighth component of the tuple. + An 8-tuple (octuple) whose value is (item1, item2, item3, item4, item5, item6, item7, item8). + + + Represents a 1-tuple, or singleton, as a value type. + The type of the tuple's only component. + + + + The current instance's first component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its field + is equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1), + where Item1 represents the value of . If the field is , + it is represented as . + + + + + Represents a 2-tuple, or pair, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + + Returns a value that indicates whether the current instance is equal to a specified object based on a specified comparison method. + + The object to compare with this instance. + An object that defines the method to use to evaluate whether the two objects are equal. + if the current instance is equal to the specified object; otherwise, . + + + This member is an explicit interface member implementation. It can be used only when the + instance is cast to an interface. + + The implementation is called only if other is not , + and if it can be successfully cast (in C#) or converted (in Visual Basic) to a + whose components are of the same types as those of the current instance. The IStructuralEquatable.Equals(Object, IEqualityComparer) method + first passes the values of the objects to be compared to the + implementation. If this method call returns , the method is + called again and passed the values of the two instances. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2), + where Item1 and Item2 represent the values of the + and fields. If either field value is , + it is represented as . + + + + + Represents a 3-tuple, or triple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3). + If any field value is , it is represented as . + + + + + Represents a 4-tuple, or quadruple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4). + If any field value is , it is represented as . + + + + + Represents a 5-tuple, or quintuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5). + If any field value is , it is represented as . + + + + + Represents a 6-tuple, or sixtuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + The type of the tuple's sixth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + The current instance's sixth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + The value of the tuple's sixth component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5, Item6). + If any field value is , it is represented as . + + + + + Represents a 7-tuple, or sentuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + The type of the tuple's sixth component. + The type of the tuple's seventh component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + The current instance's sixth component. + + + + + The current instance's seventh component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + The value of the tuple's sixth component. + The value of the tuple's seventh component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5, Item6, Item7). + If any field value is , it is represented as . + + + + + Represents an 8-tuple, or octuple, as a value type. + + The type of the tuple's first component. + The type of the tuple's second component. + The type of the tuple's third component. + The type of the tuple's fourth component. + The type of the tuple's fifth component. + The type of the tuple's sixth component. + The type of the tuple's seventh component. + The type of the tuple's eighth component. + + + + The current instance's first component. + + + + + The current instance's second component. + + + + + The current instance's third component. + + + + + The current instance's fourth component. + + + + + The current instance's fifth component. + + + + + The current instance's sixth component. + + + + + The current instance's seventh component. + + + + + The current instance's eighth component. + + + + + Initializes a new instance of the value type. + + The value of the tuple's first component. + The value of the tuple's second component. + The value of the tuple's third component. + The value of the tuple's fourth component. + The value of the tuple's fifth component. + The value of the tuple's sixth component. + The value of the tuple's seventh component. + The value of the tuple's eight component. + + + + Returns a value that indicates whether the current instance is equal to a specified object. + + The object to compare with this instance. + if the current instance is equal to the specified object; otherwise, . + + The parameter is considered to be equal to the current instance under the following conditions: + + It is a value type. + Its components are of the same types as those of the current instance. + Its components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component. + + + + + + Returns a value that indicates whether the current + instance is equal to a specified . + + The tuple to compare with this instance. + if the current instance is equal to the specified tuple; otherwise, . + + The parameter is considered to be equal to the current instance if each of its fields + are equal to that of the current instance, using the default comparer for that field's type. + + + + Compares this instance to a specified instance and returns an indication of their relative values. + An instance to compare. + + A signed number indicating the relative values of this instance and . + Returns less than zero if this instance is less than , zero if this + instance is equal to , and greater than zero if this instance is greater + than . + + + + + Returns the hash code for the current instance. + + A 32-bit signed integer hash code. + + + + Returns a string that represents the value of this instance. + + The string representation of this instance. + + The string returned by this method takes the form (Item1, Item2, Item3, Item4, Item5, Item6, Item7, Rest). + If any field value is , it is represented as . + + + + diff --git a/packages/System.ValueTuple.4.5.0/lib/uap10.0.16299/_._ b/packages/System.ValueTuple.4.5.0/lib/uap10.0.16299/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/lib/xamarinios10/_._ b/packages/System.ValueTuple.4.5.0/lib/xamarinios10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/lib/xamarinmac20/_._ b/packages/System.ValueTuple.4.5.0/lib/xamarinmac20/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/lib/xamarintvos10/_._ b/packages/System.ValueTuple.4.5.0/lib/xamarintvos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/lib/xamarinwatchos10/_._ b/packages/System.ValueTuple.4.5.0/lib/xamarinwatchos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/ref/MonoAndroid10/_._ b/packages/System.ValueTuple.4.5.0/ref/MonoAndroid10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/ref/MonoTouch10/_._ b/packages/System.ValueTuple.4.5.0/ref/MonoTouch10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/ref/net461/System.ValueTuple.dll b/packages/System.ValueTuple.4.5.0/ref/net461/System.ValueTuple.dll new file mode 100644 index 0000000..ba8aeb6 Binary files /dev/null and b/packages/System.ValueTuple.4.5.0/ref/net461/System.ValueTuple.dll differ diff --git a/packages/System.ValueTuple.4.5.0/ref/net47/System.ValueTuple.dll b/packages/System.ValueTuple.4.5.0/ref/net47/System.ValueTuple.dll new file mode 100644 index 0000000..ed3bd7b Binary files /dev/null and b/packages/System.ValueTuple.4.5.0/ref/net47/System.ValueTuple.dll differ diff --git a/packages/System.ValueTuple.4.5.0/ref/netcoreapp2.0/_._ b/packages/System.ValueTuple.4.5.0/ref/netcoreapp2.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/ref/netstandard2.0/_._ b/packages/System.ValueTuple.4.5.0/ref/netstandard2.0/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/ref/portable-net40+sl4+win8+wp8/System.ValueTuple.dll b/packages/System.ValueTuple.4.5.0/ref/portable-net40+sl4+win8+wp8/System.ValueTuple.dll new file mode 100644 index 0000000..8c72a7a Binary files /dev/null and b/packages/System.ValueTuple.4.5.0/ref/portable-net40+sl4+win8+wp8/System.ValueTuple.dll differ diff --git a/packages/System.ValueTuple.4.5.0/ref/uap10.0.16299/_._ b/packages/System.ValueTuple.4.5.0/ref/uap10.0.16299/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/ref/xamarinios10/_._ b/packages/System.ValueTuple.4.5.0/ref/xamarinios10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/ref/xamarinmac20/_._ b/packages/System.ValueTuple.4.5.0/ref/xamarinmac20/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/ref/xamarintvos10/_._ b/packages/System.ValueTuple.4.5.0/ref/xamarintvos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/ref/xamarinwatchos10/_._ b/packages/System.ValueTuple.4.5.0/ref/xamarinwatchos10/_._ new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/useSharedDesignerContext.txt b/packages/System.ValueTuple.4.5.0/useSharedDesignerContext.txt new file mode 100644 index 0000000..e69de29 diff --git a/packages/System.ValueTuple.4.5.0/version.txt b/packages/System.ValueTuple.4.5.0/version.txt new file mode 100644 index 0000000..47004a0 --- /dev/null +++ b/packages/System.ValueTuple.4.5.0/version.txt @@ -0,0 +1 @@ +30ab651fcb4354552bd4891619a0bdd81e0ebdbf